基于套接字通信的远程截屏显示与控制技术
摘 要:采用Socket套接字通信,使用MFC与SDK混合编程技术,完成远程截取目标机屏幕并实现本地机对目标机的控制功能。其中,本地机界面使用MFC,目标机使用SDK,这种实现方案既方便本地机作为客户端控制界面的实现,同时又满足目标机作为服务端无需界面、仅实现Socket通信的要求。
关键词:WinSocket;套接字通信;远程控制;截屏
Display and Control of Remote Obtaining Screen Based on Socket Communication
ZHONG Wen, YU Xinsheng
(Embedded System Dept., East China Institute of Computer Technology, Shanghai 200233)
【Abstract】Based on the Socket communication, this paper uses the program technology of MFC and SDK to obtain the remote machine’s screen and realize the control function. In the paper, the interface of client use MFC, and the server use SDK, this design can realize the interface of client expediently, and adapt for the requirement that the server not need interface but socket communication.
【Key words】WinSocket; Socket communication; Remote control; Obtaining screen
远程控制技术在远程设备(软件)的维护、监控与故障诊断等方面有广泛的应用前景,且大都使用Client/Server模式。该结构包括连接在网络中的多台计算机,那些处理应用、请求另一计算机服务的计算机为客户机(本地机),而响应请求并处理请求的计算机称为服务器(目标机)。
远程控制的原理[1]是:用户连接到网络上,客户程序发送身份验证信息和与远程主机连接的请求,远程主机的服务器端程序验证客户身份,若验证通过,就与客户建立连接,并向用户发送验证通过和已建立连接的信息。此时用户便可以通过客户端程序向远程主机发送要执行的指令,而服务器端程序则执行这些指令,并把键盘、鼠标和屏幕刷新传给客户端程序,客户端程序通过处理把主机屏幕等信息进行显示,使用户就像亲自在远程主机上操作一样。这种方式称为基于远程服务的远程控制(Remote Control over Remote Service)。
综上所述,实现客户端对服务端的远程控制,需要就解决双机Socket网络通信、远程截取屏幕显示以及屏幕数据传送控制等3个问题进行讨论。


