欢迎来到三一办公! | 帮助中心 三一办公31ppt.com(应用文档模板下载平台)
三一办公
全部分类
  • 办公文档>
  • PPT模板>
  • 建筑/施工/环境>
  • 毕业设计>
  • 工程图纸>
  • 教育教学>
  • 素材源码>
  • 生活休闲>
  • 临时分类>
  • ImageVerifierCode 换一换
    首页 三一办公 > 资源分类 > DOC文档下载
     

    简单远程控制系统被控端的设计毕业设计论文.doc

    • 资源ID:2402073       资源大小:482KB        全文页数:30页
    • 资源格式: DOC        下载积分:8金币
    快捷下载 游客一键下载
    会员登录下载
    三方登录下载: 微信开放平台登录 QQ登录  
    下载资源需要8金币
    邮箱/手机:
    温馨提示:
    用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)
    支付方式: 支付宝    微信支付   
    验证码:   换一换

    加入VIP免费专享
     
    账号:
    密码:
    验证码:   换一换
      忘记密码?
        
    友情提示
    2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
    3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
    4、本站资源下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。
    5、试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。

    简单远程控制系统被控端的设计毕业设计论文.doc

    毕业设计(论文)简单远程控制系统被控端的设计论文作者姓名:周睿申请学位专业:计算机科学与技术申请学位类别:工学学士指导教师姓名(职称):陶德元(教授)论文提交日期:2007年06月06日简单远程控制系统被控端的设计摘 要随着现今社会计算机的广泛普及以及网络的快速发展给远程控制系统带来了广阔的用武之地,人们可以通过简单的终端机完全的控制网络另一端的被控机,从而完成强大的控制功能,获取被控机的任何信息,这种方式被称之为远程控制。简单远程控制系统由主控端和被控端两部分组成。主控端用于实施各种对连网计算机的监控操作,被控端对于接收到的数据进行分析,解释并执行。系统主要可以实现获取被控端信息、被控端系统控制、消息发送和被控端界面控制的监控功能。本文对远程控制系统原理和主要相关技术作了简单介绍,在进行需求分析之后,详细描述了本系统的被控端的设计与实现,最后表格形式给出测试结果。关键词:远程控制;C/S模式;套接字;信息安全Simple Remote Control System The Design of Controlled TerminalAbstractWith the wide use of computer and the rapid development of network, the remote control system is used far and wide. Just through simple manipulate of the terminal, people can completely control the computer on the other side, including obtain the system information of the computer, and implement powerful functions. It is so-called remote control.The simple remote control system consists of two parts including controlling terminal and controlled terminal. We can monitor the controlled terminal and implement some operation about controlling the controlled terminal on the controlling monitor. The controlled terminal is used for analyzing, explaining and implement the received data. The system can implement the function of getting the information of controlled terminal, control controlled terminal, sending messages, controlling the screen of the controlled computer and so on.The paper simply introduces the theory of remote control and the main technology. After the analysis, it describes the design and implement of the controlled terminal. At last, it shows the result in form of figures.Key words: Remote control; Client/Server mode; Socket; Information security目 录论文总页数:18页1引言11.1 本课题的研究背景和意义11.2 国内外研究现状11.3 本课题的主要研究的内容21.4 作者的主要工作22简单远程控制系统相关理论研究22.1 远程控制系统概述22.2 因特网协议32.3 客户/服务起模32.4 Socket的引入32.5 Winsock控件42.6 Timer控件介绍43简单远程控制系统总体结构53.1 系统规格说明53.1.1 简单远程控制系统的概貌53.1.2 各模块功能要求53.1.3 性能要求53.1.4 运行要求63.2 数据要求63.3 用户系统描述64 简单远程控制系统的功能模块的设计64.1 简单远程控制系统的主体设计64.2 简单远程控制系统的系统功能的实现75 简单远程控制系统功能模块的编程及实现75.1 简单远程控制的连接功能实现85.2 简单远程控制的被控端系统控制的实现95.3 简单远程控制的向被控端发送消息的实现105.4 简单远程控制的被控端界面控制的实现115.5 简单远程控制功能实现流程136测试136.1 测试环境136.2 测试过程以及结果13结 论14参考文献16致 谢17声 明181引言1.1 本课题的研究背景和意义随着社会、科技、经济的不断发展,远程控制技术的应用范围也在不断拓展,从最初银行、军事、机要部门等特殊行业领域的应用已经延伸到了今天的电业部门、商业部门、普通工矿企业、道路交通领域、学校教学应用、卫生医疗部门以及宾馆酒店行业等等,其卓越的功能也日益受到各个应用行业的重视和青睐,但是许多远程监控软件都需要配有硬件设备,这不仅使得实际应用的成本升高,而且也使实施应用增加了技术障碍。虽然有诸多问题的存在,但是我们应该认识到远程控制技术的研究,不仅充分利用了现有资源,拓宽了因特网的利用范围,而且也使远程控制能够减少成本扩大远程化距离,实现任意节点的访问机制,并进入一般的应用领域,比如,进入家庭,人们通过因特网控制家用电器,采用因特网作为远程控制平台,是一项很有前途和潜力的技术,另外它可以应用到设备远程诊断、远程监测、遥控等领域。因特网的出现及其发展推动了科学技术的各个方面,并使之取得了巨大的进步,利用因特网,可以使远程控制技术得到大范围的应用,从而方便人们的生活。1.2 国内外研究现状目前,基于因特网的远程控制国内外都有不同程度的研究。相对来说,由于西方国家在信息技术和计算机控制技术的发展上的优势,他们在研究远程控制方面相对早些,而且有些公司有相关的初级产品问世。国内由于因特网的飞速发展,近几年也开始积极的研究。国内外在基于因特网的远程机器人控制方面的研究相对其他领域要多一些。例如美国伯克立大学研制的是一个通过因特网远程控制的种植花草 工业机器人手臂。拥护通过机器人手臂上的摄像机所传输的图像,对这个花园内进行简单的操作。这些基于因特网的远程控制系统普遍采用了客户/服务器网络模型,现场采用摄像机来监视,并通过网络发出指令。当前,由于网络基础设施还不够完善,所以监视图像由于数据量大,其传输时间过长。即使是采用了数据压缩技术,也仍然有很大的数据量需要传输,因而由此产生的远程控制时间延迟也必然很大。此外,这类系统普遍采用瘦客户/肥服务器的网络模型,监控端的控制操作功能过于简单,都只是发一些简单的指令,而不能实现一些复杂的必要的逻辑处理功能。第三,这类系统在处理上由于时间延迟影响现场控制系统不稳定时,仍然采用的执行-等待-执行-等待的单步执行流程,生产设备运行效率相当低下,第四,大量的采用以图像监视为主的方式,虽然可以使得监控人员更能直观的感受到现场情况,便与监控人员的控制;但是我们应该注意到,有些设备的被监控状态是难以用图像方式表示出来的,比如温度、速度、压力这类精确的数值量;此外有些采用图像传输的数据量也可以采用通过数据传输关键数据以在监控端进行实况模拟图,这样就会减少数据量,而使数据传输速度大大提高。1.3 本课题的主要研究的内容远程控制是一个具有重要的研究价值的课题,它在工业,国防等各个方面有着广泛的需求。然而,使用传统的方式,由于成本、技术、维护、传输距离等方面的问题,远程控制并没有很好的推广和利用。先进由于因特网的出现,使得成本低廉的远距离通信轻易的变成了现实。于是采用因特网作为远程控制平台,将远程控制的状态、命令等控制数据和信息通过因特网传输。既减少了开发成本、也增加远程控制的灵活性,人们也不必再为了实现一个临时的远程控制,而需要重建一套远程控制系统。本课题的研究主要内容主要包括以下几个方面:1.简单远程控制系统相关理论研究2.简单远程控制系统总体结构3.简单远程控制系统的功能模块的设计4.简单远程控制系统功能模块的编程实现1.4 作者的主要工作该系统软件是本人与宣琳同学共同研究开发的,宣琳同学主要负责主控端和部分被控端(获取被控端信息)的设计与开发,本人主要负责被控端的设计与开发。本人在系统开发中的具体工作:1.搜寻与系统开发相关的资料,熟悉VB开发语言。2.完成被控端与主控端的连接。3.完成被控端模块的程序代码。4.与宣琳同学一起对系统进行调试和测试。5.归并相关系统开发文档,完成毕业论文的撰写。2简单远程控制系统相关理论研究本系统采用C/S工作模式,由主控端和被控端两部分组成,被控端作为客户端运行在目标计算机上,接收指令,根据指令执行相应的操作;主控端运行在用户计算机向被控端发送指令。编码上是利用VB进行Socket网络编程,使用Microsoft Visual Basic 6.0 进行编译。2.1 远程控制系统概述远程控制系统是以通信技术为基础的一门先进技术。正是由于通信技术的发展使得远程控制技术得到快速的发展。所有的远程控制系统几乎都可以无一例外的划分为:被控端(主要负责控制过程的实施)、网络、主控端(借助远程数据访问控制过程,进行控制)、三个子系统的构成。各部分分工协作,共同实现对设备的远程控制。2.2 因特网协议TCP/IP(传输控制协议/因特网协议)是建议在因特网的基础上。因特网上的计算机通过互相发送信息分组进行通信,这种信息分组由成块的数据、特定的控制信息和寻址信息组成。控制和寻址信息用来确保信息包到达目的地,并够能被收信主机重新组成可以使用的计算机数据。这种信息传递方式是由TCP/IP协议所规定的。因此,TCP/IP是互联网的“通信语言”。TCP/IP协议中规定了信息包应该怎样分层、分组,怎样在收信计算机上将信息分组重新装成计算机数据,怎样在线路上传输信号,以及许多其他有关的问题,如不同的层次上的信息分组需要不同的软件和硬件支持,以便他们在不同的网络和通信线路上发送和接收信息。IP的一个主要工作是路由选择,即在网络中引导数据包的过程。TCP负责转换级处理,在一个连接的每一端给每个发送的数据包分配一个顺序号,每个计算机都跟踪记录它已发送或者接收到的数据包顺序号。TCP/IP协议模型由四层组成,分别是应用层、传输层、网络层、网络接口层。2.3 客户/服务起模客户/服务起模型是常用的设计网络模型,网络通信要在两台计算机或互相对话的两个程序之间建立网络连接,网络连接包括通信进程的两端以及它们之间的通道。客户/服务起模型将网络应用程序分为两部分:客户部分和服务器部分。网络连接的客户放请求连接,服务器方提供服务和信息。连接的服务器方对客户的请求做出响应,也就是说,在客户/服务起模型中,网络应用程序完成两个独立的和定义好的功能:请求信息和对请求信息做出响应。请求信息是客户方应用程序,对请求信息做出响应的程序充当服务器程序。2.4 Socket的引入在远程控制软件中,对于主控机和受控机进行的数据通信所使用的主要技术就是网络编程技术和系统编程技术。随着计算机网络技术的发展TCP/IP协议,被集成到操作系统内核中时,相当于在操作系统中引入了一种新型的输入/输出操作,操作系统拥护进程与网络的交互作用比用户进程与传统的输入/输出设备互相作用复杂的多。首先,进行网络操作的两个进程不在同机器上,如何建立它们之间的联系?其次,有很多种网络协议,如何建立一种通用机制以支持多种协议?这些都是网络应用变成所要解决的问题。20世纪80年代初,美国政府的高级研究工程机构ARPA给加利福尼亚大学BERKELEY分校提供了奖金,让他们在UNIX操作系统下实现TCP/IP协议。在这个项目中,研究人员为TCP/IP网络通信开发了一个应用程序接口API。这个API就称为SOCKET(套接字)接口,今天SOCKET接口是TCP/IP网络最为通用的API,也是在INTERNET上进行应用开发最为通用的API。2.5 Winsock控件Winsock 控件对用户来说是不可见的,它提供了访问 TCP 和 UDP 网络服务的方便途径。Microsoft Access、Visual Basic、Visual C+ 或 Visual FoxPro 的开发人员都可使用它。为编写客户或服务器应用程序,不必了解 TCP 的细节或调用低级的 Winsock APIs。通过设置控件的属性并调用其方法就可轻易连接到一台远程机器上去,并且还可双向交换数据。TCP基础:数据传输协议允许创建和维护与远程计算机的连接。连接两台计算机就可彼此进行数据传输。如果创建客户应用程序,就必须知道服务器计算机名或者 IP 地址(RemoteHost属性),还要知道进行“侦听”的端口(RemotePort 属性),然后调用Connect方法。如果创建服务器应用程序,就应设置一个收听端口(LocalPort属性)并调用 Listen 方法。当客户计算机需要连接时就会发生ConnectionRequest事件。为了完成连接,可调用ConnectionRequest事件内的Accept方法。建立连接后,任何一方计算机都可以收发数据。为了发送数据,可调用 SendData方法。当接收数据时会发生DataArriva事件。调用DataArrival事件内的GetData方法就可获取数据。UDP基础:用户数据文报协议(UDP)是一个无连接协议。跟TCP的操作不同,计算机并不建立连接。另外UDP应用程序可以是客户机,也可以是服务器。为了传输数据,首先要设置客户计算机的LocalPort属性。然后,服务器计算机只需将Remote Host设置为客户计算机的Internet地址,并将 RemotePort属性设置为跟客户计算机的LocalPort属性相同的端口,并调用 SendData方法来着手发送信息。于是,客户计算机使用DataArrival事件内的 GetData方法来获取已发送的信息。2.6 Timer控件介绍Timer(时钟)控件响应时间的流逝。它们独立于用户,编程后可用来在一定的时间间隔执行操作。此控件一般用处是检查系统时钟,判断是否执行某项任务。对于其它后台处理,Timer空间也是非常有用的。3简单远程控制系统总体结构3.1 系统规格说明3.1.1 简单远程控制系统的概貌“简单远程控制系统的设计与实现”主要包含两个部分:主控端和被控端。主控端是运行在用户计算机上的一个程序,该端主要实现对被控端的控制,以实现对被控计算机关机、注销、重起以及向被控端发送消息等功能。被控端是运行在目标计算机(被控计算机)上的一个程序,以提供该计算机的各种信息,以及实现主控端对其执行的各种操作。3.1.2 各模块功能要求本系统在功能要求上主要实现的功能有:主控端获取被控端计算机系统信息、对被控端界面的控制、对被控端的系统控制以及对向被控端发送消息。1.主控端获取被控端系统信息。此模块的主要功能是主控端能通过此功能了解到被控计算机上的系统信息,为后面进一步的对被控端进行控制作一个简单的了解,也同时通过此功能对被控计算机上所安装的软、硬件进行了解,做到对被控计算机的了解程度跟了解本机一样。2.对被控端的界面控制。此模块主要实现主控端对被控计算机的用户界面的控制,包括对开始按钮的隐藏以及显示、任务栏的隐藏以及显示和桌面图标的隐藏和显示功能。3.对被控端的系统控制。此模块主要实现对被控计算机的机器系统的控制,包括对被控计算机实施关闭计算机、重新启动被控端计算机以及注销被控端计算机目前使用的用户功能。做到使主控端用户在主控计算机上就能很容易的控制被控计算机的系统。4.向被控端发送信息。此模块主要实现主控计算机向被控计算机发送文字性消息的功能,有了此功能模块的建立,主控端用户可以在本机上向被控端用户传递信息和发送消息,做到了主控端的用户与被控端用户的联系。3.1.3 性能要求主控端界面应当简单、友好、方便使用和操作;被控端是用作运行在被控计算机内的可执行文件,为提高执行速度,从客户端发送到服务端的信息应尽量的少。主控端与被控端之间通过使用TCP协议建立连接,以实现对被控计算机的控制。3.1.4 运行要求设计出的简单远程控制软件应当在现在使用的大量操作系统上都能运行。例如:Windows 2000、Windows XP、Windows 2003;能在较低的硬件配置上运行,如128M的内存,AMD 1800+的处理器。3.2 数据要求简单远程控制系统的结构中,主控端是相当于一个系统的前台,为用户提供了一个操作界面,而几乎所有的操作都是在被控端这个后台处理程序运行的,被控端界面提供的操作可分为连接、动作、和信息三个模块。连接模块是在被控端运行的,动作模块作为远程控制系统的核心,是在主控端运行实现的。3.3 用户系统描述首先设置主控计算机为主控端,主控端显示为监听状态,被控端通过输入主控计算机的IP地址点击连接主控端。被控端连接成功后,主控端显示为连接状态,主控端便可以对被控计算机实现各种操作。每次操作成功后都会在主控端计算机上显示相应的提示信息。4 简单远程控制系统的功能模块的设计4.1 简单远程控制系统的主体设计被控端窗口设计为输入主控计算机IP地址,连接主控端计算机的窗口,连接成功后自动进入托盘中,使被控计算机桌面很洁净,也体现出一些隐藏性。主控端窗口设计为对被控端的各种控制按钮的界面,当被控端与主控端连接成功后在被控端显示连接成功对话框,提示用户连接成功后,用户通过点击界面上的按钮便很容易的实现对被控计算机的各种控制。其体统结构图如图1所示:图 1 简单远程控制系统结构图4.2 简单远程控制系统的系统功能的实现简单远程控制通信系统的各类控制指令数据传输采用的是因特网通道,控制质量数据传输是基于因特网远程控制系统的关键。我们主要以TCP/IP协议上的通信为基础,使用C/S模型来解决控制数据的通信问题。我们在通信系统上的设计是采用WINSOCK,我们按客户/服务器模型来设计基于因特网的远程控制指令数据通信技术。WINSOCK通信系统采用的控制模式有两种方式,一个是多对一,即多个客户可以同时向服务器请求服务,而服务器也能够同时对这些请求给予相信处理。服务器负责控制控制质量的接受和处理。而客户则是控制指令数据的发送和状态数据的接受和显示,另一个一对多,既一个客户可以同时向多个服务器发送请求服务,而服务器也能够对这些请求给予相信处理。服务器负责控制控制指令的接受和处理,而客户则是控制指令的发送和状态数据的接受和显示。主控端与被控端的连接的系统结构图如图2所示:图2 功能结构层次图5 简单远程控制系统功能模块的编程及实现以上介绍了远程控制软件编写的一些理论基础,下面介绍一下我们编写的一款远程控制软件所实现的功能,并对其所编程原理进行了剖析。这款软件同大多数远程控制软件一样有两部分组成:包含server.exe和client.exe两个程序,server.exe是服务程序,是安装在与你联网的电脑里(就是被维护或者被控制的电脑),如果要进行控制,就必须在对方的电脑里运行server.exe;client.exe是客户端程序,安装在你自己的电脑里,如果要对对方电脑进行控制时,就启动客户程序,并可以通过client.exe程序界面的彩旦控制装有server.exe程序的电脑(就是被维护或者被控制的电脑)。5.1 简单远程控制的连接功能实现本设计的所有功能的实现都是建立在主控端与被控端之间连接的基础上的。主控端与被控端的连接是通过使用WINSOCK控件基于TCP/IP协议进行通信的。首先,主控端程序必须设置好LocalPort属性,作为监听端口,这个值为一个整数,只要是一个其他TCP/IP应用程序没有使用过的值即可,本设计中主控端使用的是1007。然后使用Listen方法进入监听状态,等待被控端的连接请求。被控端程序发出连接请求,使主控端程序产生ConnectionRequest事件,该时间得到一个参数requestID,主控端程序用Accept方法接受被控端程序的requestID请求。这样,主控端程序就可以用SendData方法发送数据了。Accept方法必须用上一步得到的requestID作为其参数。当主控端程序接收到数据时,产生DataArrival事件,参数BytesTotal包含接收到的数据字节数。在该事件中可以使用GetData方法接收数据。如果接受到Close事件,则用Close方法关闭TCP/IP连接。其次,被控端程序设置Remotehost属性,指定运行主控端程序的主机名,设置RemotePort 属性,指定主控端程序的监听端口,使用Connect方法,向主控端提出连接请求。主控端接受被控端的请求,被控端程序产生Connect事件,就可以用SendData方法发送数据了。当被控端程序接收到数据时,产生DataArrival事件,参数BytesTotal包含接收到的数据字节数。该事件中,可以用GetData方法接收数据,如果接收到Close事件,则用Close方法关闭连接。有了这些设置和代码的编写后,主控端程序与被控端程序就能连接了。首先在被控端Click事件过程中写入代码:Private Sub Command1_Click()If txtip.Text = "" ThenMsgBox "请输入IP,后连接", vbInformation, "提示"Exit SubElseCommand1.Enabled = Falsesckclient.RemoteHost = txtip.Textsckclient.LocalPort = 1008sckclient.RemotePort = 1007sckclient.ConnectEnd IfEnd Sub把主控端与被控端连接所使用的代码写入Connect事件里:Private Sub scksever_ConnectionRequest(ByVal requestID As Long)If scksever.State <> 0 Then scksever.Closescksever.Accept requestID 'End Sub这样在主控端与被控端运行并成功建立连接后,用户通过点击主控端界面上的各种按钮就能驱动相应的事件函数,向被控计算机发送命令代码。运行在主控端计算机上的客户端先创建一个套接字,绑定之后便处于监听状态,等待服务端的连接请求。目标计算机上线后,同样创建套接字,然后向客户端发起连接请求,两端建立好连接后,客户端便可以向服务端发送请求数据,即命令,服务端收到命令后将执行相应的操作并向客户端发送相应的回应信息。这样客户端就达到控制目标计算机的目的了。5.2 简单远程控制的被控端系统控制的实现本系统在此模块中设计为当主控端把控制指令(关机、重起、注销)数据发送给被控端后,被控端接收到这些指令,则进行相应的操作。一般说来如果被控端收到这些指令则调用相应的API函数。在使用界面上运用了选项按钮控件OPTIONBUTTON,在主控端程序中使用了程序控制结构语句IfThenElse,应用程序中可以经过条件表达式的测试,并根据测试结果为TRUE和FALSE来决定程序运行的方向,只有当满足TURE条件时才会进行下个程序流程,否则执行另一个程序流程。例如当主控端测试结果为REBOOT时,主控端向被控端发送参数EWX_REBOOT,被控端根据参数调用CALL SHELL()函数并触发事件过程重起被控端计算机。Shell函数是VB中的内部函数,它负责执行一个可执行文件,返回一个Variant(Double),如果成功的话,代表这个程序的进程ID,若不成功,则会返回0。Shell的语法:Shell(PathName,WindowStyle)。PathName 为必需参数。类型为String,它指出了要执行的程序名,以及任何需要的参数或命令行变量,也可以包括路径名。WindowStyle为可选参数。Integer类型,指定在程序运行时窗口的样式。WindowStyle的常量、值的描述如以下这些值:VbHide 0窗口被隐藏,且焦点会移到隐式窗口。VbNormalFocus1窗口具有焦点,且会还原到它原来的大小和位置。VbMinimizedFocus2 窗口会以一个具有焦点的图标来显示(缺省值)。VbMaximizedFocus3 窗口是一个具有焦点的最大化窗口。VbNormalNoFocus4 窗口会被还原到最近使用的大小和位置,而当前活动的窗口仍然保持活动。VbMinimizedNoFocus6 窗口会以一个图标来显示,而当前活动的窗口仍然保持活动写入被控端的代码如下:Private Sub Command1_Click()mainform.scksever.SendData "HIDSTAR"End Sub(定义Command1按钮,当用户点击按钮时发送隐藏开始命令"HIDSTAR"给被控端。)Case "HIDSTAR" (接收HIDSTAR命令后,激发隐藏开始按钮事件)wnd = FindWindowEx(wnd, 0, sStartButton, vbNullString)(利用FindWindow函数获得窗口句柄)ShowWindow wnd, SW_HIDE(利用ShowWindow函数实现隐藏开始按钮功能)实现控制图如图3所示:图 3 系统控制界面5.3 简单远程控制的向被控端发送消息的实现本系统在发送消息模块中使用MSGBOX控件。当主控端在发送信息窗体中输入信息,点击Command1控件按钮时,触发Command1_Click()事件过程,发送参数SENDIF给被控端,当被控端收到参数后触发被控端的Command1_Click()事件并弹出消息文本对话框显示由主控端发送过来的信息Text1.Text。其主要代码如下:Private Sub Command1_Click()主控端mainform.scksever.SendData "SENDINF" & sendtxt.TextEnd SubPrivate Sub Command1_Click()被控端connectform.sckclient.SendData "SENDINF" & Text1.TextEnd Sub在被控端对话框中输入消息后,单击发送后主控端效果图如4所示:图4 主控端发送消息效果图当主控端发送消息后,被控端自动弹出消息对话框如图5所示:图5 被控端接收到主控端向被控端发送消息的效果图5.4 简单远程控制的被控端界面控制的实现在 VB 编程中有时需要对系统的任务栏的各个部分(如开始菜单按钮、任务栏等等)进行各类操作(如隐藏、显示、有效、无效)等等,这是如何实现的呢,主要就是通过 ShowWindow、EnableWindow 函数来完成的。在这里主要调用了API中的ShowWindow函数来实现被控端界面的隐藏和显示功能。ShowWindow函数的功能是控制窗体的可见性,当获得窗体句柄后,函数通过SW_HIDE和SW_SHOW来显示或隐藏界面。本系统在此模块中主要使用到的函数Show Window。此函数在VB声明 Declare Function Show Window Lib "user32" Alias "ShowWindow" (ByVal hwnd As Long, ByVal nCmdShow As Long) As Long 并且使用PICTURE BOX等控件,实现对被控端的桌面图标、开始按钮、任务栏的隐藏和显示的功能。当服务器端点击Command控件按钮时,触发Command_Click()事件过程,向被控端程序发送参数HIDSTAR(隐藏开始按钮)、APPSTAR(显示开始按钮)、HIDTASK(隐藏任务栏)、NOTHIDT(隐藏任务栏)、HIDDISK(隐藏桌面图标)、NOHIDDI(显示桌面图标),被控端收到参数后调用 SystemParametersInfo()函数并根据参数触发不同的事件过程。实现其功能的参数如表1所示:表1 showwindow函数主要参数表实现对被控端计算机开始按钮的隐藏和显示效果图如图6所示:图6开始按钮的显示与隐藏实现对被控端计算机任务栏的隐藏和显示效果图如图7所示: 图7 任务栏的显示与隐藏实现对被控计算机桌面图标的隐藏和显示效果图如图8所示:图8 桌面图标的显示与隐藏5.5 简单远程控制功能实现流程本系统的功能实现流程如图9所示: 图9 功能实现流程图及操作按钮表2 函数与参数对应表操作按钮操作函数参数SYSINFO()GETSYSTCALL SHELL()EWX_SHUTDOWNCALL SHELL()EWX_REBOOTCALL SHELL()EWX_LOGOFFSENDMESSAGE()SENDINFSHOWWINDOW()SW_HIDE、SW_SHOW注释:CALL SHELL函数根据不同的参数进行不同的操作, 参数EWX_LOGOFF将关闭所有的进程, 然后注销当前用户;参数EWX_REBOOT将关闭当前系统, 然后重新启动;参数EWX_SHUTDOWN将关闭计算机。6测试6.1 测试环境Intel Celeron M 1.50GHz 256M内存的笔记本2台,2台都装有WINDOWS XP SP2操作系统。6.2 测试过程以及结果让两台计算机都通过HUB同时连接到同一局域网内,任意一台计算机运行简单远程控制的主控端程序来作为主控端,并单击“设置为主控端”将该计算机设置为主控端,然后在该计算机使用运行->CMD->IPCONFIG查看该计算机的IP地址,然后在另外一台作为被控端的计算机上运行的被控端程序窗口中输入刚刚查看的IP地址,单击“连接”按钮,让被控端计算机处于正在连接状态,等待与主控端连接成功后弹出连接成功对话框,如图10所示。图10 连接成功效果图结果,主控端获取到客户端的IP地址,成功的与被控端建立连接。主控端通过单击主控端的按钮,被控端计算机执行相应的操作情况与测试的过程和结果可总结在表3中。表3 测试结果汇总按 钮操 作预期结果信息栏显示测试结果单击主控端弹出提示主控端弹出提示主控端提示弹出单击并选择获取信息再单击 主控端收到被控端发来的系统信息弹出对话框,并且里面显示被控端计算机系统信息成功弹出对话框,并且显示系统信息单击并分别选择:关闭计算机、重起计算机、注销计算机,再单击确定计算机分别会关机、重起、注销计算机分别关机、重起、注销计算机成功关闭、重起、注销在弹出的对话框中输入:“这是一条由主控端发送过来的消息!”被控端自动弹出对话框,并且对话框中显示:“这是一条由主控端发送过来的消息!”这是一条由主控端发送过来的消息!被控端成功弹出对话框,并且对话框中显示:“这是一条由主控端发送过来的消息!”单击并分别选择:开始按钮的隐藏(显示)、 任务栏的隐藏(显示)、桌面图标的隐藏(显示)被控端计算机分别:开始按钮被隐藏(显示)任务栏被隐藏 (显示)桌面图标被隐藏(显示)被控端按钮分别被隐藏(显示)被控端计算机分别:开始按钮被成功隐藏(显示)任务栏成功被隐藏 (显示)桌面图标成功被隐藏(显示)单击主控端关闭退出主控端程序退出主控端程序成功退出通过表3中的预期结果与测试结果的比较,显然木马的各项功能都成功实现,达到需求分析中的预期目的。结 论通过对简单远程控制系统的发展的了解;对简单远程控制系统的分类与功能的学习;对基本理论、简单远程控制的连接过程和控制过程的研究,特别上对简单远程控制功能实现的深入研究,所设计的系统形成了C/S构架,具备了简单远程控制系统的方便操作、控制功能强大等基本特性。为用户提供了简单方便操作的友好界面,实现了获取被控计算机的系统信息、控制被控计算机的关机、重起、注销、向被控计算机发送短消息、控制被控计算机的界面等简单功能。由于时间与编程能力有限,以及当前简单远程控制软件的迅猛发展,所设计的简单远程控制系统还存在一些不足,功能上只实现了一些例如关闭、重起、注销被控计算机等简单的功能。计算机技术日新月异,简单远程控制技术也在不停的更新换代,要设计出功能更强大、水平更高、技术含量更高的简单远程控制系统,我下一步还应该加强对操作系统、Windows编程、网络编程的学习和对其他更先进的远程控制软件的研究。参考文献1 李光明.中文VISUALBASIC6.0程序设计教程M.北京:冶金工业出版社,2002。2 李光明.中文VISUALBASIC6.0程序设计编程实例M.北京:冶金工业出版社,2001。3 崔彦锋,许小荣.VB网络与远程控制M.北京:北京希望电子出版社,2002。4 范建华,张涛.TCP/IP详解M.北京:机械工业出版社,2000。5 刘立贺.远程控制系统设计与开发D.吉林:吉林大学硕士论文,2006。6 Visual Basic控件及技巧编程专辑OL.,2001-06-12致 谢本文是在陈艾东老师与陶德元教授的热情关心和指导下完成的,他们渊博的知识和严谨的治学作风使我受益匪浅,对顺利完成本课题起到了极大的作用。在此向他们表示我最衷心的感谢!在论文完成过程中,本人还得到了其他老师和许多同学的热心帮助,本人向他们表示深深的谢意!最后向在百忙之中评审本文的各位专家、老师表示衷心的感谢!作者简介:姓 名:周睿 性别: 男出生年月:1984年5月

    注意事项

    本文(简单远程控制系统被控端的设计毕业设计论文.doc)为本站会员(仙人指路1688)主动上传,三一办公仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三一办公(点击联系客服),我们立即给予删除!

    温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。




    备案号:宁ICP备20000045号-2

    经营许可证:宁B2-20210002

    宁公网安备 64010402000987号

    三一办公
    收起
    展开