远程屏幕监控程序设计和实现_第1页
远程屏幕监控程序设计和实现_第2页
远程屏幕监控程序设计和实现_第3页
远程屏幕监控程序设计和实现_第4页
远程屏幕监控程序设计和实现_第5页
已阅读5页,还剩21页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

远程屏幕监控程序设计和实现第一页,共26页。客户机程序设计界面TimerTcpServerTcpClient第二页,共26页。主控机程序设计界面MainMenuTcpServerTcpClientImage第三页,共26页。控件名属性或方法功能描述TcpServer1Active激活监听服务(true,false)作用:客户机建立连接和接收客户机发来的数据包BlockMode阻塞模式bmBlocking:阻塞模式,即以同步的方式进行数据传输。bmNonBlocking:非阻塞模式,即以异步的方式进行数据传输。bmThreadBlocking:自动为每个连接分配线程,每个线程都采用bmBlocking同步模式。LocalHost设定本机IP地址(服务器地址)LocalPort设定本机接收数据的端口(服务器端口)OnAccept当接收到客户机的数据包时自动触发该事件Receiveln函数;接收字符串ReceiveBuf函数:接收数据包并读入缓冲区内要与TcpClient的相一致!主要控件的介绍第四页,共26页。控件名属性或方法功能描述TcpClient1Active激活监听服务(true,false)作用:与主控机建立连接和向主控发送数据包BlockMode阻塞模式(bmBlocking)RemoteHost要发送到(远程)主控机IP地址RemotePort要发送到(远程)主控机接收数据的端口Connected用来判断是否已与服务器连接上Open函数:建立与服务器的连接sendln函数:发送字符串函数SendStream函数:发送流(如文件、图像、视频等)要与TcpServer的相一致!第五页,共26页。控件名属性或方法功能描述Image1Align排列alClient作用:显示图片Picture用于指定控件中的要显示的图片Bitmap:显示位图(*.bmp)Graphic:显示JPEG图片(*.jpg)Icon:显示图标(*.ico)Stretch设置图片是否伸展充满整个图片控件的整个区域LoadFromFile从磁盘中装载图片文件(打开文件)SaveToFile保存显示的图片到磁盘中(保存文件)LoadFromStream从磁盘中装载图片文件到流中SaveToStream保存显示的图片到流中第六页,共26页。本机IP地址:192.168.0.1接收信息的端口:2222本机IP地址:192.168.0.2接收信息的端口:3333向哪台机子发送呢?TcpClient.Remotehost:=192.168.0.2TcpClient.RemotePort:=3333触发TcpServer的OnAccept事件;在该事件里对接收到的数据进行处理调用TcpClient的SendLn或SendStream函数发送数据如果信息要发回去怎么办呢?TcpClient.Remotehost:=192.168.0.1TcpClient.RemotePort:=2222触发TcpServer的OnAccept事件;在该事件里对接收到的数据进行处理调用TcpClient的SendLn或SendStream函数发送数据注意:不管是客户机和主控机都既要发送和接收数据,所以均需要有TcpServer和TcpClient控件;一个用于接收,另一个用于发送。网络控件的属性设置第七页,共26页。主要控件在面板的位置TcpServerTcpClientTimerImage第八页,共26页。客户机的工作流程1、打开客户机程序时,进行初始化:设定本机TcpServer控件的IP地址和监听的端口(为接收数据时做好准备);TcpClient控件的IP地址和监听的端口(远程主机的,发送数据时使用)。打开客户机端的监听,以便能随时接收主控机发过来的命令(数据包)。这个工作在主窗体Form的Onshow(显示)事件处理过程中实现。第九页,共26页。第十页,共26页。2、监听主控机发过来的命令接收到主控机发来的“开始”命令,启动定时器,按设定的时间间隔抓屏幕图像,生成数据包并向主控机发送接收到主控机发来的“结束”命令,关闭定时器,停止发送图像数据包在客户机的TcpServer1控件的OnAccept事件处理过程中编写代码处理:第十一页,共26页。第十二页,共26页。3、定时器定时发送图像数据包在Timer控件的OnTimer事件处理过程中编写代码处理:第十三页,共26页。4、发送图像数据包的过程创建位图对象,并分配内存空间。屏幕抓图,并把抓图转换成BMP图像BMP图像转换成JPEG图像,并压缩JPEG图像读入内存流中TcpClient控件发送内存流的大小(图片的大小)TcpClient控件发送内存流的数据(图片数据,系统可能自动分n个数据包发送出去)释放对象占用的内存空间进行下一次处理第十四页,共26页。“流”是建立在面向对象基础上的一种抽象的处理数据的工具。在流中,定义了一些处理数据的基本操作,如读取数据,写入数据等。在编程时,利用流可以把各种类型的数据(包括对象)在不同媒介上(如内存、外存和数据库字段中等)的管理操作统一抽象为对流对象的操作。例如,数据的读、写、复制等操作。关于流(Stream)第十五页,共26页。第十六页,共26页。第十七页,共26页。主控机的工作流程1、打开主控机程序时,进行初始化:设定主控机的TcpServer控件的IP地址和接收数据时的监听端口;发送数据时TcpClient控件的IP地址和端口(客户机)。这个工作在主窗体Form的OnShow(显示)事件处理过程中实现。第十八页,共26页。第十九页,共26页。2、监听客户机发过来图像数据

在主控机的TcpServer1控件的OnAccept事件处理过程中编写代码处理:接收要传送过来的图像数据的大小接收要传送过来的图像数据(可能有n个数据包,需要一个个重新组装成原来的样子)把接收到的图像数据显示到出来处理完毕,等待下一次数据的接收和处理第二十页,共26页。第二十一页,共26页。第二十二页,共26页。3、开始和停止监控客户机屏幕

在菜单”监控”的onclick中向客户机发送“开始”命令第二十三页,共26页。3、开始和停止监控客户机屏幕

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论