基于TcpIP协议实现的远程控制软件


摘 要
近年来,网络技术的不断发展,为远程控制技术的发展创造了条件。远程控制系统软件越来越受到人们的重视,其实用性也毋庸质疑。使用远程控制技术,可以对远程计算机进行操作,就像控制本地计算机一样。这种技术在远程设备(软件)的维护、控制与故障诊断等方面有着广泛的应用前景。
基于C#远程控制软件突破了空间的限制,使用者不用亲临,在自己的电脑面前就能轻松的实现对被控制端机器的控制。本系统采用C#编程和TCP/IP协议实现。笔者在开发过程中将网络技术与远程控制理论基础相结合,实现了以下功能:能连续获得被控制端机器屏幕变化;实现被控制端硬盘文件的上传、下载;实现对鼠标、键盘的模拟;实现在远程机器上远程关机、远程重启计算机,方便了用户监视和操作被控制端机器。本系统从系统需求分析、概要设计、详细设计到具体的编码实现和后期的代码优化、功能测试都严格遵循了软件工程的思想。
关键词:远程控制;C#;TCP/IP
Abstract
In recent years, the development of network technology, the development of remote control technology to create the conditions. Remote control system software by the people more and more attention, their practical also no doubt. Using remote control technology, to the remote computer operation, like the local computer control. This technology in the remote device (software) maintain and control and fault diagnosis has wide application prospects.
Based on the remote control software is a breakthrough in c #, users no space to, in their own computer can easily realize the control of the machine. This system USES c # programming and the TCP/IP protocol. The author in the development process of network technology and remote control in combining theoretical basis, the following functions: can be controlled machine; the screen, Realizing the hard disk files by controlling download; uploading, Realization of the mouse, keyboard simulation, In the remote machine remote shutdown, restart your computer, convenient for remote monitoring and operation control user client machines. This system requirement analysis, system design, detailed design summary to the specific coding and later code optimization function test, all strictly follow the software engineering idea.
Keywords: remote control, C #, TCP/IP
目录
第一章 引 言
近年来,随着计算机及网络的应用普及,千千万万的人们在娱乐、通讯、学习、工作等各方面都实现了前所未有的信息化,极大地提高了生活质量与工作效率。远程控制技术,始于DOS时代,因为当时网络不发达,这门技术没有得到很多重视,但是随着网络的高度发展,电脑的管理及技术支持的需要,远程控制技术越来越引起人们的关注。
网络技术的不断发展,也为远程控制技术的发展创造了条件。远程控制软件一般分两个部分:一部分是客户端程序Client,另一部分是服务器端程序Server,多数远程控制软件把被控制端作为服务器,主控端作为客户端。考虑到在控制过程中,如果把主控端作为客户端向被控制端发送TCP连接请求,容易被防火墙或者杀毒软件阻止,控制过程就不能够成功进行。因此,本毕业设计将被控制端设计为客户端,向主控端发连接请求,建立连接后,主控端向被控制端发送远程控制命令,控制被控制端电脑中的各种应用程序运行,被控制端对主控端发送来的命令进行处理,并将命令处理结果返回给主控端。远程控制软件顺应时代发展的需求,它实用、使用简便,是非常不错的软件。
1.2 远程控制概述
远程控制是在网络上由一台电脑(主控端Remote/客户端)远距离去控制另一台电脑(被控端Host/服务器端)的技术,这里的远程不是字面意思的远距离,一般指通过网络控制远端电脑,不过,大多数时候我们所说的远程控制往往指在局域网中的远程控制而言。当操作者使用主控电脑所控制被控电脑时,就如同坐在被控电脑的屏幕前一样,可以启动被控电脑的应用程序,可以使用被控电脑的文件资料,甚至可以利用被控电脑的外部打印设备(打印机)和通信设备(调制解调器或者专线等)来进行打印和访问互联网,就像你利用遥控器遥控电视的音量、变换频道或者开关电视机一样。不过,有一个概念需要明确,那就是主控电脑只是将键盘和鼠标的指令传送给远程电脑,同时将被控电脑的屏幕画面通过通信线路回传过来。也就是说,我们控制被控电脑进行操作似乎是在眼前的电脑上进行的,实质是在远程电脑中实现的,不论打开文件,还是上网浏览、下载等都是存储在远程的被控电脑中的。
1.2远程控制的背景知识
远程控制是在网络上由一台电脑(主控端Remote)远距离去控制另一台电脑(被控制端Host)的技术,这里的远程不是字面意思的远距离,一般指通过网络控制远端电脑,不过,大多数时候我们所说的远程控制往往指在局域网中的远程控制而言。
当操作者使用主控端电脑控制被控制端电脑时,就如同坐在被控制端电脑的屏幕前一样,可以启动被控制端电脑的应用程序,可以使用被控制端电脑的文件资料,不过,有一个概念需要明确,那就是主控端电脑只是将键盘和鼠标的指令传送给远程电脑,同时将被控制端电脑的屏幕画面通过通信线路回传过来。也就是说,我们控制被控制端电脑进行操作似乎是在眼前的电脑上进行的,实质是在远程的电脑中实现的,不论打开文件,还是上网浏览、下载等都是存储在远程的被控制端电脑中的。
电脑中的远程控制技术,始于DOS时代,只不过当时由于技术上没有什么大的变化,网络不发达,市场没有更高的要求,所以远程控制技术没有引起更多人的注意。但是,随着网络的高度发展,电脑的管理及技术支持的需要,远程操作及控制技术越来越引起人们的关注。
1 3 远程控制软件的原理
远程控制软件一般分两个部分:一部分是客户端程序Client,另一部分是服务器端程序Server,它的控制的过程是先在被控制端电脑上执行客户端程序,像一个普通的客户一样向主控端电脑中的服务器端程序发出信号,建立一个特殊的远程服务,然后通过这个远程服务,接收主控端发送过来的远程控制命令,并对命令进行处理,最后将命令处理结果返回给主控端,我们称这种远程控制方式为基于远程服务的远程控制。通过远程控制软件,我们可以进行很多方面的远程控制,包括获取目标电脑屏幕图像、窗口及进程列表;记录并提取远端键盘事件(击键序列,即监视远端键盘输入的内容);可以打开、关闭目标电脑的任意目录并实现资源共享;提取拨号网络及普通程序的密码;激活、中止远端程序进程;管理远端电脑的文件和文件夹;关闭或者重新启动远端电脑中的操作系统。
前面我们所说的是一台电脑对一台电脑的情况,其实,基于远程服务的远程控制最适合的模式是一对多,即利用远程控制软件,我们可以使用一台电脑控制多台电脑,在进行一台电脑对多台远端电脑进行控制时,我们发现,远程控制软件似乎更像一个局域网的网络管理员,而提供远程控制的远程终端服务就像极了办公室局域网的延伸。这种一对多的连接方式在节省了调制解调器的同时,还使得网络的接入更加安全可靠,网络管理员也更易于管理局域网上的每一台电脑。
1.4 远程控制技术的应用
1、远程办公
这种远程的办公方式不仅大大缓解了城市交通状况,减少了环境污染,还免去了人们上下班路上奔波的辛劳,更可以提高企业员工的工作效率和工作兴趣。
2、远程技术支持
通常,远距离的技术支持必须依赖技术人员和用户之间的电话交流来进行,这种交流既耗时又容易出错。许多用户对电脑了解得很少,然而当遇到问题时,他们必须向无法看到电脑屏幕的技术人员描述问题的症状,并且严格遵守技术人员的指示精确地描述屏幕上的内容,但是由于他们的电脑专业知识非常少,描述往往不得要领,这就给技术人员判断故障制造了非常大的障碍。即使技术人员明白了用户电脑的问题所在,在尝试解决问题时,技术人员可能会指导用户执行一系列复杂的命令,而这个过程对用户来说是十分困难的,因为技术人员要依靠自己的语言来“操纵”用户的鼠标和键盘简直是太难了,如果用户不能正确地遵照指示去做,问题可能会进一步恶化,电脑很可能会因为错误的操作导致系统的崩溃。这样一来,往往是技术人员要为十分简单的一个问题和用户说上十几分钟,甚至会专程跑到很远的用户那里帮助解决问题,而用户往往因为问题还没有解决,只好将电脑闲置不用,单等技术人员上门来解决问题。有了远程控制技术,技术人员就可以远程控制用户的电脑,就像直接操作本地电脑一样,只需要用户的简单帮助就可以得到该机器存在的问题的第一手材料,很快就可以找到问题的所在,并加以解决。
3、远程交流
利用远程技术,商业公司可以实现和用户的远程交流,采用交互式的教学模式,通过实际操作来培训用户,使用户从技术支持专业人员那里学习示例知识变得十分容易。而教师和学生之间也可以利用这种远程控制技术实现教学问题的交流,学生可以不用见到老师,就得到老师手把手的辅导和讲授。学生还可以直接在电脑中进行习题的演算和求解,在此过程中,教师能够轻松看到学生的解题思路和步骤,并加以实时的指导。
4、远程维护和管理
网络管理员或者普通用户可以通过远程控制技术为远端的电脑安装和配置软件、下载并安装软件修补程序、配置应用程序和进行系统软件设置。
以上内容只是毕业设计作品的部分资料介绍,如果了解更多详情请联系客服QQ:57510459
购买帮助>>