- 1、本文档共31页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
《计算机网络原理》课程设计报告
第 PAGE 31 页 共 NUMPAGES 31 页
简单远程监控软件课程设计实验报告
计算机科学与技术
2011-2-20
目 录
一、题目简单的远程监控软件4
二、需求分析5
(1)题目分析5
(2)系统功能需求分析5
三、概要设计 6
(1)系统开发原理6
(2)系统运行概述6
四、详细设计 7
客户端8
服务端9
五、程序测试10
六、心得体会16
七、源码分析————————————-— 17
一、题目简单的远程监控软件
(1)任务:实现一个简单的远程监控软件,采用Windows Socket(或Java Socket)编程。采用C/S架构。应该具有易用、美观的图形界面。
(2)客户端功能要求
能够远程监控一台主机,显示主机屏幕内容,能远程关机
能远程下载或上传文件。
能远程执行一些DOS命令。
能远程运行一些可执行命令。
(3)具体实现要求
至少实现其中三个功能。
二、需求分析
(1)题目分析
远程监控软件一般分两个部分:一部分是客户端程序Client,另一部分是服务器端程序Server,在使用前需要将客户端程序安装到被监控端电脑上,将服务器端程序安装到主控端电脑上。 它的控制的过程是先在被监控端电脑上执行客户端程序,像一个普通的客户一样向主控端电脑中的服务器端程序发出信号,建立一个特殊的远程服务,然后通过这个远 程服务,接收主控端发送过来的远程控制命令,并对命令进行处理,最后将命令处理结果返回给主控端。
通过 远程监控软件,可以获取目标电脑屏幕图像、窗口及进程列表;记录并提取远端键盘事件(击键序列,即监视远端键盘输入的内 容);可以打开、关闭目标电脑的任意目录并实现资源共享;提取拨号网络及普通程序的密码;激活、中止远端程序进程;管理远端电脑的文件和文件夹;关闭或者 重新启动远端电脑中的操作系统;修改Windows注册表;通过远端电脑上、下载文件和捕获音频、视频信号等。
前面所说的是一台电脑对一台电脑的情况,但基于远程服务的远程控制最适合的模式是一对多,即利用远程监控软件,可以使用一台电脑监控多台电脑,只需要利用办公室局域网的优势就可以轻松实现远程多点控制了。
(2)系统功能需求分析连续获得被控端机器屏幕变化。实现被控端硬盘文件的下载。实现对鼠标、键盘的模拟。实现在被控端机器上执行任意DOS命令。远程关机计算机。其他需求系统实用,界面操作简便。被监控端自动隐藏运行。
三、概要设计
(1)系统开发原理
本系统是利用类java.awt.robot中的屏幕截取和鼠标、键盘自动控制功能,然后加上网络传输功能来完成来完成截屏和远程控制的。
(2)系统运行概述1.启动被监控端,打开指定的UDP端口号。用于读取命令。2.被监控端读取命令(命令格式为ordername:port)ordername为命令名字,port为主控端打开的TCP端口。3.接到主控端连接后,被监控端就对当前用户的桌面采用屏幕截取,然后发送给主控端。依被监控端设计的不同,可以设定屏幕截取的时间间隔,时间间隔短一点就可以获得连续屏幕变化了。4.主控端在画布上对鼠标、键盘事件进行监听,被监控端重演主控端上的事件5.主控端和被监控端读取和发送数据,分别来实现文件上传和下载。6.在被监控端实现DOS命令的执行。
服务器端
服务器端
消息输入/命令处理/结果显模块
通信模 块
客户端
通信模块
命令处理模 块
INTERNET
四、详细设计
系统使用的关键技术就是Java网络编程和Java图形编程。用Java网络编程实现主控端和被监控端的通讯(命令收发、数据传送),用Java图形编程完成主控端控制界面的编写。具体应用如下:1.实现主控端(服务器)与被监控端(客户端)之间的通讯。——用Java Socket来实现。2.用Java采集事件,封装成消息,用于发送。——在主控端机器上采集事件(一般只不过是键盘和鼠标的事件),然后封装成消息类传输到被监控端。3.在被监控端上重演主控端的动作事件。—— 在被监控端运行client端,接收消息,如果主控端有请求操作的消息,用Robot截下当前屏幕,传给主控端,主控端显示被监控端的屏幕,是一个位图; 然后接收在这个位图上的鼠标事件和键盘事件,并把鼠标位置(位图上的坐标换算成对应的屏幕上的坐标)和键值送到被监控端上,在被监控端上重演同样的事件。
成功连接监视端TCP端口
成功连接监视端TCP端口
读取事件对象
事件类型判断
控制套接关闭
键盘事件重演
鼠标事件重演
控制结束
键盘
文档评论(0)