毕业设计 毕业论文 计算机科学与技术 计算机远程控制软件的设计与开发.doc
《毕业设计 毕业论文 计算机科学与技术 计算机远程控制软件的设计与开发.doc》由会员分享,可在线阅读,更多相关《毕业设计 毕业论文 计算机科学与技术 计算机远程控制软件的设计与开发.doc(52页珍藏版)》请在三一办公上搜索。
1、xx学院本科生毕业论文 计算机远程控制软件的设计与开发Computer Remote Control Software Design and Development院 系计算机科学与工程学院专 业计算机科学与技术学 生 班 级xx级xx班姓 名xx学 号xx指导教师单位计算机科学与工程学院指导教师姓名xxx指导教师职称讲师计算机远程控制软件的设计与开发计算机科学与技术2009级00班 xxx 摘要随着网络技术的飞速发展,远程控制协助软件越来越受到人们的重视。计算机远程控制技术是计算机系统管理人员在异地通过计算机网络连接目标计算机,由本地计算机对远程计算机进行管理和维护的行为。基于JAVA 与S
2、ocket编程技术结合的C/S远程监控系统软件突破了空间的限制,使用者不用亲自到目标地点,直接通过网络就能实现对被控机器的监控,并且有着友好的操作界面。本系统采用Java网络编程和Java图形编程实现。本系统在开发过程中,将计算机网络技术与远程控制理论基础相结合。本远程控制软件包括远程资源管理器、远程监控、远程CMD控制台三大模块,实现了对被控机磁盘文件的上传、下载、删除,实现对鼠标、键盘的模拟以及屏幕截取,实现了远程执行DOS命令,实现了远程关机。本系统从设计最初到具体实现、优化、测试都严格遵循软件工程的思想。 关键词:Java;Socket;C/S;远程控制;屏幕截取;DOS命令。Comp
3、uter Remote Control Software Design and DevelopmentComputer Science and Technology xxx-xx xxxxSupervisor xxxAbstract With the rapid development of network technology, the remote control to assist software by more and more peoples attention. Computer remote control technology is a computer system man
4、agement personnel in different through the computer network connection target computer, the local computer to the remote computer management and maintenance of behavior. Based on JAVA and Socket programming technology in combination with C/S remote monitoring system software broke through the limita
5、tion of space, users need not personally to the target location, directly through the network can achieve for the controlled machine monitoring, and have a friendly operation interface. This system uses Java network programming and Java graphical programming realization. This system in the developme
6、nt process, the computer network technology and remote control theory foundation combined. The remote control software including remote resource manager, remote monitoring, remote CMD console three modules, realize the accused of machine disk file upload, download, delete, realize the simulation of
7、the mouse, keyboard and screen capture, realized the remote implement DOS command, realized the remote shutdown. This system from design to implementation first, optimization and testing are strictly follow the concept of software engineering. Keywords: Java;Socket; C/S; Remote control; Screen captu
8、re; DOS command.目录1 引言11.1 远程控制软件的研究现状和前景21.2 课题研究的目的和意义31.3 课题研究的主要内容32 系统分析32.1 系统功能分析32.2 系统软件模型42.3 系统的开发平台42.3.1 Eclipse介绍42.3.2 Java语言43 主要技术支持53.1 Socket53.2 Socket分类73.3 基本套接字函数调用83.3.1创建套接字93.3.2建立套接字连接93.3.3数据传输93.3.4关闭套接字113.4 C/S结构特点及发展113.5 TCP/IP体系结构123.5.1网络层123.5.2互联层123.5.3 传输层133.5
9、.4应用层133.6 多线程133.7 Java远程控制的基本原理144 C/S模式远程控制系统的设计实现164.1 主要实现功能164.2 Client(监控端)设计164.2.1文件操作client.files174.2.2远程控制台client.cmd214.2.3远程监控client.view234.2.4关机264.2.5退出264.2.6帮助264.3 Server(被控端)设计274.3.1文件操作(server.files)274.3.2 CMD控制台(server.cmd)324.3.3远程监控实现(server.view)334.4软件测试与分析334.4.1软件测试的重要
10、性334.4.2测试实例的研究与选择344.4.3测试环境与测试条件354.4.4系统部分模块测试情况355 总结与展望36致谢37参考文献381 引言现如今,随着网络的快速发展,越来越多的企业都建立了自己的内部网络。面对众多的部门联网计算机,对于人数相对偏少的网络管理员来说,如果每台计算机都需要亲临维护既浪费时间,工作效率也极低,因此他们希望对整个网络上的计算机能实现远程控制操作;也希望能实现远程传输文件操作;同时还能查看实时的计算机运行状态和进行一些相关操作;希望能够传输文件;希望能够防止病毒的蔓延、非法程序的拷贝、杜绝某些用户的越权或非法操作等。因此,对于一个网络管理员来说,一个合适的远
11、程协控制软件是至关重要的。我们熟知的远程控制技术,最早始于DOS时代,当时并没有现在的条件与技术,而且也网络不发达,市场没有更高的要求,所以远程控制技术没有引起许多人的注意。但如今,随着网络的飞速发展,随着人们对电脑的管理及技术支持的需要的不断提高,远程操作及控制技术越来越引起人们的关注。远程控制一般支持下以下网络类型:LAN、WAN、拨号方式、互联网方式。除此之外,实现远程控制的方式还有通过串口、并口、红外端口等通信方式。对于传统的远程控制软件,一般使用NETBEUI、NETBIOS、IPX/SPX、TCP/IP等协议来实现远程控制。随着网络技术的发展,越来越多的远程控制软件提供通过C/S模
12、式以Java语言来开远程控制软件。对于现如今流行的远程控制软件,一般分两个部分:客户端Client,和服务器端Server。实用方法是,先将客户端安装到主控计算机上,将服务端程序安装在被控制电脑上,然后在主控端电脑上执行Client端程序,并且向被控端电脑中的Server端程序发出信号,建立基于TCP协议的远程服务连接,然后通过这个远程服务,使用各种远程控制功能发送远程控制命令,Server端响应接收到的命令并执行相应的操作,我们称这种远程控制方式为基于远程服务连接的远程控制。通过远程控制软件,我们可以进行很多方面的远程控制,包括截取目标电脑屏幕图像、窗口以及进程目录;记录并提取远端键盘事件;
13、可以打开、关闭目标电脑的任意目录并实现资源共享;管理远端电脑的文件和文件夹;关闭或者重新启动远端电脑中的操作系统等。 上面主要表述的一般是一对一的基于远程服务的远程控制实现原理,其实,如今最实用的远程控制软件最理想的模式应该是一对多,即一台控制机可以控制多台电脑。这对于如今的意义就好像一个大型的企业,如果控制端能够直接控制全部电脑,即显示全部电脑目录,再进行一些列的操作,如远程桌面协助,远程资源管理器,都将带来极大的方便。一般的远程控制程序的优点在于,方便技术人员进行远程维护或协助,技术人员再也不用亲临到实地操作,只需通过互联网,就可以方便的进行诸如应用程序的上传,部署,或是对远程故障机的协助
14、操作等等,极大的节省了人力物力,大大的提高了工作效率。当然,凡是有利必有弊,随着互联网的普及,远程控制技术也是如今黑客恶意攻击的主要手段,诸如一些木马控制程序等,不仅侵犯了他人的隐私,也严重的违反了国家法律。但是远程控制技术对于人类日常生活也是很重要的,如何利用好这门技术造福人类,这也是我研究这门课题的意义。本软件就是基于此而设计开发的,能实现以下的基本的远程功能: (1) 查看被控制端的文件目录清单,即远程资源管理器;(2) 拷贝被控制端的文件到控制端,同时也能上传文件到被控端,或删除被控端文件;(3) 强迫被控制端重新启动或关机;(4) 直接执行任何可执行命令,打开应用程序;(5) 控制被
15、控制端的屏幕,在本地直接操作被控制端计算机;而且做了一些必要的安全性考虑。1.1 远程控制软件的研究现状和前景在飞速发展的今天,包括涵盖远程办公、远程教育、远程维护、远程协助以及企业管理等都属于远程控制涉及的应用领域。随着应用领域的越来越广泛,使用的价值也不断提高,市场需求也越来越明显。目前比较出名的远程控制软件例如PeerYou,VCN,Oray等都具有高效的信息交互和传输能力,以及实现跨平台的高效远程控制。C/S模式远程控制软件充分利用网络资源,以普通PC机为控制设备,通过面向对象以及模块化的程序设计,有着低成本、高实用性、可靠性和可扩展性的优点。综合以上原因,我决定通过一定的理论知识与实
16、践来尝试学习此类知识,并且使用Java编程语言结合C/S模式实现一款远程控制软件。1.2 课题研究的目的和意义通过学习远程控制软件的相关技术知识来更深刻的理解TCP/IP协议以及Socket编程原理;通过实现代码的编写来达到对Java语言编程能力的锻炼以及增加对程序代码优化的经验。1.3 课题研究的主要内容基于Windows的远程控制软件开发毕业设计的主要任务是要求做出从系统角度出发的基于C/S开发模式与远程控制技术的实用软件。使用Socket网络编程技术及Java程序开发语言。实现基本的远程控制要求,界面简洁友好。采用面向对象开发技术,严格遵循软件工程设计思想。要求:(1) 基于C/S模式架
17、构;(2) 实现截屏、执行远程CMD命令,远程关机等功能;(3) 软件安全、稳定、可靠;(4) 至少能在两台计算机之间进行控制演示;(5) 界面简洁友好。2 系统分析2.1 系统功能分析本远程控制软件由Server(服务器)和Client(客户端)两部分组成,并且需要使用者在服务端与客户端同时运行相应程序来实现,具体步奏如下:第一步,服务器端运行相应程序,使服务器端口处于监听状态,这里本远程控制软件使用了三个端口(30018,30011,30012);启动服务器后,被控端计算机则处于等待连接状态。第二步,运行客户端程序,输入被控端IP,服务端准备响应,然后程序自动连接到指定IP的远程计算机。到
18、目前为止,整个连接步奏则完成,这个程序之间已经建立了基于TCP协议的远程服务连接,进入使用界面后便可进行相应操作。2.2 系统软件模型本系统采用C/S程序开发模式设计,由Server端(服务端)与Client端(客户端)两部分组成,下面是结构图:图 2.1 程序结构图Fig.2.1 The chart of program structure 对客户端的设计,一直遵循面向对象的设计思想,坚持界面友好,易操作;对于服务端的设计则偏于简洁实用,启动后显示界面位于屏幕的右下角,只进行操作的反馈,详尽的设计过程将在接下来介绍。2.3 系统的开发平台2.3.1 Eclipse介绍本软件实用的主要开发工具
19、之一Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。它本身就是使用Java语言开发的,其本身就包含了括Java开发工具(Java Development Kit,JDK),使用Eclipse进行Java程序开发不仅方便管理,而且也能大大提高开发效率。 2.3.2 Java语言早期的Java是使用在家用电器等小型系统的编程语言,被称为Oak。用来解决家用电器的控制和通讯问题,如电视机、电话、闹钟、烤面包机等。由于这些智能化家电的市场需求没有预期的高,Sun放弃了该项计划。就在Oak将要失败的时候,随着互联网的发展,Sun看到了Oak在计算机网络上的广阔应用前景,于是现在广为流传
20、使用的Java诞生了。 Java 编程语言的风格非常接近C、C+。Java是一个完全面向对象的程序设计语言,它继承了 C+ 语言面向对象技术的同时舍弃了C+语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java SE 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。 Java 不同于一般的编译执行计算机语言和解释执行计算机语言。
21、它首先将源代码编译成二进制字节码(byte code),然后依赖各种不同平台上的虚拟机来解释执行字节码,从而实现了“一次编译、到处执行”的跨平台特性。不过,每次的编译执行需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。但在 J2SE 1.4.2 发布后,Java 的执行速度有了大幅提升。 与传统程序不同,Sun 公司在推出 Java 之际就将其作为一种开放的技术。全球数以万计的 Java 开发公司被要求所设计的 Java 软件必须相互兼容。“Java 语言靠群体的力量而非公司的力量”是 Sun 公司的口号之一,并获得了广大软件开发商的认同。这与微软公司所倡导的注重精英
22、和封闭式的模式完全不同。 Sun 公司对 Java 编程语言的解释是:Java 编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。 Java 平台是基于 Java 语言的平台。这样的平台目前非常流行,因此微软公司推出了与之竞争的.NET平台以及模仿 Java 的 C#语言。3 主要技术支持C/S是当今比较流行与具有发展潜力的技术之一。使用C/S模式设计的客户、服务器应用系统具有系统结构优化、资源利用率高、整体运算速度快的优点,因而得到了广泛的应用。Socket网络编程技术也是当今主要的进程之间的通信方式,它利用客户/服务器模式巧妙地解决了进程
23、之间建立通信连接的问题。基于C/S模式于Socket网络编程技术,本远程控制程序才能得以实现。3.1 Socket20世纪80年代初,美国政府的高级研究工程机构(ARPA)给加利福尼亚大学Berkeley分校提供资金,让他们在UNIX操作系统下实现TCP/IP协议。在这个项目中,研究人员为TCP/IP网络通信开发了一个应用程序接口(API)。这个API就称为Socket接口。今天,Socket接口是TCP/IP网络最通用的API,也是在Internet上进行应用开发最为通用的API。事实上,Socket(套接字)就是在计算机之间提供了一个通信端口。通过这个端口,一台计算机可以与任何具备套接字的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 毕业论文 计算机科学与技术 计算机远程控制软件的设计与开发 计算机科学 技术 计算机 远程 控制 软件 设计 开发
![提示](https://www.31ppt.com/images/bang_tan.gif)
链接地址:https://www.31ppt.com/p-2882723.html