简单的远程控制软件

给客户开发了一套软件,并部署在客户的服务器上。为了方便维护,开了远程控制。不过客户使用的是联通的网络,公司是电信网络,远程控制很慢,于是考虑如何降低网络流量,将远程服务器的屏幕分辨率降低、颜色数降低,不过操作还是很卡。

考虑到一般操作不需要实时刷新屏幕,只有点击鼠标或者输入字符后需要获取最新的屏幕图像,于是按照本思路自己写了一个远程控制的软件。

 

关键技术:

控制方式:

使用B/S方式,客户端直接用IE访问。

服务器端直接通过HTTP协议接收指令,经过搜索,Net直接提供了HttpListener用于处理HTTP通讯。

模拟鼠标操作:

直接调用API:mouse_event,网上介绍也比较多,我在其他项目中使用过,直接使用现有文件。

模拟键盘操作:

.Net直接有SendKeys发送按键,特殊按键都可以进行处理。

获取屏幕截图:

在网上搜索了一下,直接使用网上的代码。

 

将以上内容拼凑一下,软件就完成了。实际使用了一下,效果还不错。

使用方法:

将编译后目录下的“httpServer.exe”和“screen.htm”文件拷贝到服务器上,运行即可。

默认端口9999,也可在可执行文件后跟上端口号。

客户端使用IE服务服务器IP和对应端口即可,例如“http://127.0.0.1:9999/”

鼠标控制:直接点击图像即可。

键盘控制:在文本框中输入键盘指令,发送即可。

图中的示例为: 1回车2TAB键2.1,然后执行全选操作(Ctrl+A),具体特殊键参见SendKeys帮助。

image

 

说明:

必须远程登录后才能获取到图像和执行指令。(必须和远程控制等软件配合使用,不能单独使用。)

可以自行修改screen.htm文件,将一些常用鼠标键盘操作制作为脚本,一键执行,例如自动登录软件等。

附件下载:

源码和可执行文件:/Files/Pharaoh/httpServer.zip

源码为VS2008格式。

posted on 2010-08-30 17:43  Pharaoh  阅读(667)  评论(0编辑  收藏  举报

导航