基于 JAVA C/S 远程监控系统软件的实现
摘 要
近年来,网络技术的不断发展,为远程监控技术的发展创造了条件。远程监
控系统软件越来越受到人们的重视,其实用性也毋庸质疑。基于 JAVA C/S 远程
监控系统软件突破了空间的限制,使用者不用亲临,在自己的电脑面前就能轻松
的实现对被监控端机器的监控。本系统采用 Java 网络编程和 Java 图形编程实现。
笔者在开发过程中将网络技术与远程监控理论基础相结合,实现了以下功能:能
连续获得被监控端机器屏幕变化;实现被监控端硬盘文件的上传、下载;实现对
鼠标、键盘的模拟;实现在远程机器上执行任意 DOS 命令;远程关机、远程重
启计算机,方便了用户监视和操作被监控端机器。本系统从系统需求分析、概要
设计、详细设计到具体的编码实现和后期的代码优化、功能测试都严格遵循了软
件工程的思想。
关键词:远程监控;Java Robot;屏幕截取;Java Socket
The Implementation of the Remote Control System Software
Based on Java Technology and the C/S Mode
Abstract
In recent years, the continuous development of the Internet technology provides
remote control technology with condition for its development. Without any suspicion
to its practicability, people pay more and more attention to remote control Technology
system software. Remote control technology system software based on Java
technology and the c/s mode, breaks the restriction of space. The system adopts
network programming and graphic programming with java, and the users controlling
the remote computer easily. In the process of research, the author united network
programming and remote control theory together, which allows the system to
successfully achieve the following functions: continuously obtaining the remote
computer screen; uploading and downloading the document from the remote
computer and the simulation of mouse and keyboard; controlling the remote machines
to execute any DOS commands; turning off and restarting the computer. From the
system requirements analyses, general design, coding and the code optimization,
function testing, the remote control technology system strictly keeps to the ideas of
software engineering.
Key words: Remote Control Technology; Java Robot; Screen Capture; Java
Socket
目 录
论文总页数:20 页
1 引 言......................................................................1
1.1 远程监控的背景知识....................................................1
1 2 远程监控软件的原理....................................................2
2 系统需求分析及理论基础......................................................3
2.1 系统需求分析..........................................................3
2.1.1 系统功能需求....................................................3
2.1.2 其他需求........................................................3
2.2 系统开发原理及关键技术................................................3
2.2.1 系统开发原理....................................................3
2.2.2 系统运行概述....................................................3
2.2.3 系统的关键技术..................................................3
2.3 系统的开发平台........................................................4
2.3.1 Eclipse 介绍 ....................................................4
2.3.2 Java 语言 .......................................................4
2.3.3 Jar 命令 ........................................................4
2.4 编程运行环境..........................................................6
3 远程监控系统系统设计........................................................6
3.1 系统总体结构设计和分析................................................6
3.1.1 主控端的主要功能模块............................................7
3.1.2 被监控端的主要功能模块..........................................7
3.2 程序流程及分析........................................................7
3.2.1 被监控端启动流程................................................7
3.2.2 主控端启动流程..................................................7
3.2.3 命令接收和处理流程..............................................9
3.2.4 图形监视线程启动流程............................................9
3.2.5 远程控制流程....................................................9
3.2.6 文件上传流程...................................................10
4 系统主要模块设计和具体功能实现.............................................11
4.1 系统主要模块设计.....................................................11
4.1.1 消息输入,命令处理结果显示模块.................................11
4.1.2 通信模块实现...................................................11
4.1.3 命令处理模块...................................................12
4.2 连续获得被监控端机器屏幕变化功能实现.................................12
4.2.1 比较几种屏幕截取方法...........................................12
4.2.2 Java“屏幕照相机”的编写原理...................................12
4.2.3 Java“屏幕照相机”的实现.......................................12
4.2.4 远程屏幕监控的实现.............................................13
4.2.5 屏幕监视功能测试...............................................15
5 系统运行及测试结果.........................................................15
5.1 测试方法.............................................................15
5.2 测试环境.............................................................16
5 3 系统运行实例.........................................................16
5.3.1 连续获得被监控端机器屏幕变化功能...............................16
5.3.2 实现被监控端硬盘文件的上传、下载...............................16
5.3.3 实现对鼠标、键盘的模拟.........................................17
5.3.4 实现在被监控端机器上执行任意 DOS 命令...........................18
5.3.5 远程关机、远程重启计算机.......................................18
结 论.....................................................................19
参考文献.....................................................................19
致 谢.....................................................................20
第 1 页,共 21 页
1 引 言
近年来,随着计算机及网络的应用普及,千千万万的人们在娱乐、通讯、学
习、工作等各方面都实现了前所未有的信息化,极大地提高了生活质量与工作效
率。然而在这种种便利背后,你关注的人在做什么呢?比如:公司员工。因此,
远程监控发挥作用了。这里以公司领导为例,远程监控系统软件方便了公司领导
人管理公司员工。在一个企业中,作为公司领导人,一定很担心自己的员工利用
上班时间做工作以外的其他事情,也很担心他们泄露公司机密,等等。有了远程
监控,这样的担心就很容易解决,你不用亲临监督每个员工,在自己电脑面前就
能对他们的一举一动了如指掌。
远程监控技术,始于 DOS 时代,因为当时网络不发达,这门技术没有得到很
多重视,但是随着网络的高度发展,电脑的管理及技术支持的需要,远程监控技
术越来越引起人们的关注。
网络技术的不断发展,也为远程监控技术的发展创造了条件。远程监控软件
一般分两个部分:一部分是客户端程序 Client,另一部分是服务器端程序 Server,
多数远程监控软件把被监控端作为服务器,主控端作为客户端。考虑到在监控过
程中,如果把主控端作为客户端向被监控端发送 TCP 连接请求,容易被防火墙或
者杀毒软件阻止,监控过程就不能够成功进行。因此,本毕业设计将被监控端设
计为客户端,向主控端发连接请求,建立连接后,主控端向被监控端发送远程控
制命令,控制被监控端电脑中的各种应用程序运行,被监控端对主控端发送来的
命令进行处理,并将命令处理结果返回给主控端。
远程监控软件顺应时代发展的需求,它实用、使用简便,是非常不错的软件。
1.1 远程监控的背景知识
远程监控是在网络上由一台电脑(主控端 Remote)远距离去监控另一台电脑
(被监控端 Host)的技术,这里的远程不是字面意思的远距离,一般指通过网络
监控远端电脑,不过,大多数时候我们所说的远程监控往往指在局域网中的远程
监控而言。
当操作者使用主控端电脑监控被监控端电脑时,就如同坐在被监控端电脑的
屏幕前一样,可以启动被监控端电脑的应用程序,可以使用被监控端电脑的文件
资料,不过,有一个概念需要明确,那就是主控端电脑只是将键盘和鼠标的指令
传送给远程电脑,同时将被监控端电脑的屏幕画面通过通信线路回传过来。也就
是说,我们控制被监控端电脑进行操作似乎是在眼前的电脑上进行的,实质是在
远程的电脑中实现的,不论打开文件,还是上网浏览、下载等都是存储在远程的
被监控端电脑中的。
电脑中的远程控制技术,始于 DOS 时代,只不过当时由于技术上没有什么大