网络工程学院
《工程实践》课程实践报告
题目:远程控制系统
课程名称: 工程实践
学生姓名: 王静 李永杰 周建 肖力豪 唐斯亮 学生学号: 2011122008 2011122041
22011122040 2011122027 2011123032
专业班级: 信安&信对 指导老师: 林宏刚
《工程实践》课程实践成绩表 学习与工作《工程导论》课程实践实践能力(40%) 创新能力(10%) 态度(10%) 报告(40%) 总分 指导老师签名: 年 月 日
2012 年 6 月 28 日
0
引言
远程控制是当前信息技术领域的热点,使用远程控制技术,我们可以克服因地域差异而造成的操作不便,让网络的效率得到更大的发挥。随着技术的发展与网络的普及,目前远程控制技术的应用领域已经相当广泛。我们不仅可以通过远程控制技术管理远端电脑,解决远端电脑的故障,与其他同事通过网络实现远程协作,一起编辑一份文档或者与其他团队成员交流信息,还可以在家里或旅途中使用公司内部网络的数据与办公设备,实现远程办公。
目 录
1
1.课题背景 ...................................................................................................................... 1 2.目的及意义 .................................................................................................................. 1 3.任务概述 ...................................................................................................................... 1 3.1目标 .................................................................................................................................. 1 3.2开发工具 .......................................................................................................................... 2 3.3开发语言 .......................................................................................................................... 2 3.4开发环境 .......................................................................................................................... 2 4需求分析 ...................................................................................................................... 2 4。1市场需求 ....................................................................................................................... 3 4.2功能需求 .......................................................................................................................... 3 4.3性能需求 .......................................................................................................................... 5 4.4系统流程图 ...................................................................................................................... 6 5参考文献 ...................................................................................................................... 7
2
1 课题背景
通常企业内部或IT公司的客户技术支持部门都有技术支持业务,其任务是通过电话解答疑难问题,努力减少技术人员到现场服务或者让用户把设备送到支持中心进行维护。这种技术支持方式尽管被普遍采用,但效率不高而且大大增加了技术支持成本。通常,技术支持必须依赖技术人员和用户之间的口头交流来进行,这种交流既耗时又容易出错。许多商业用户对计算机知之甚少,然而当遇到问题时,他们必须向技术人员提供故障情报及相关操作。在尝试解决问题时,技术人员可能指导用户执行一系列复杂的过程,而这些过程对用户来说或许完全不熟悉,如果用户不能正确的按要求操作,反而使问题恶化。此外,如果通过电话不能解决问题,那么在技术人员亲自到用户现场解决问题之前,计算机将无法继续使用,导致工作延误.
对于网络管理人员来说,在整个网络运行期间,希望能够实时的监控联网计算机的运行状态和进行一些相关操作;希望能够传输文件;希望能够防止病毒的蔓延、非法程序的拷贝、杜绝某些用户的越权或非法操作等。
2 目的及意义
本文正是在上文提到的背景下提出的,目的就是为了解决计算机的远程操作, 降低企业对软件的后期维护成本,设计出一款远程控制系统.远程控制系统能使技术人员直接操作远程计算机,就像操作本地机器一样,无须用户介入,技术人员技就能得到该机器的问题的第一手材料,从而加快了问题的解决。实际上,使用远程控制工具的技术人员能够做到解答疑难问题,安装和配置软件,把软件下载到用户计算机上,配置应用程序和系统软件设置并可通过实际操作培训用户。总之,本课题的设计与实现具有很大的现实意义。
3 任务概述
3.1 目标
本项目设计为一款远程控制软件,目的是为了实现在局域网环境下实现比较高效的远程协助功能,主要功能将有屏幕监视、鼠标键盘的消息控制,和远程执行命令的功能。待开发的软件功能:
0
※.查看被控制端的桌面. ※.查看被控制端的桌面内容。 ※.强迫被控制端重新启动或关机; ※。强迫被控制端鼠标的使用.
※直接执行任何可执行命令,打开应用程序。
※控制被控制端的屏幕,在本地直接操作被控制端计算机。 ※。键盘记录
我们小组将会努力学习新的知识,进而实现远程连接的功能和实现软件的自启动、进程隐藏,甚至免杀。并且通过对更深入的学习,例如Web的应用与开发技术和网络编程技术来优化该项目。
3.2 开发工具
Visual C++ 6.0。
3.3 开发语言
C++,MFC
3.4 开发环境
Windows XP/7
4 需求分析
4.1 市场需求
远程控制的主要应用如下:
① 远程办公
这种远程的办公方式不仅大大缓解了城市交通状况,减少了环境污染,还免去了人们上下班路上奔波的辛劳,更可以提高企业员工的工作效率和工作兴趣。
② 远程技术支持
通常,远距离的技术支持必须依赖技术人员和用户之间的电话交流来进行,这种交流既耗时又容易出错。许多用户对电脑知道得很少,然而当遇到问题时,他们必须向无法看到电脑屏幕的技术人员描述问题的症状。有了远程控制技术,技术人员就可以远程控制用户的电脑,
1
就像直接操作本地电脑一样,只需要用户的简单帮助就可以得到该机器存在的问题的第一手材料,很快就可以找到问题的所在,并加以解决.
③ 远程教学
教师和学生之间可以利用这种远程控制技术实现教学问题的交流,学生可以不用见到老师,就得到老师手把手的辅导和讲授。学生还可以直接在电脑中进行习题的演算和求解,在此过程中,教师能够轻松看到学生的解题思路和步骤,并加以实时的指导.
④ 远程维护管理
网络管理员或者普通用户可以通过远程控制技术为远端的电脑安装和配置软件、下载并安装软件修补程序、配置应用程序和进行系统软件设置.
4.2 功能需求
功能需求是对软件系统的一项基本需求,这方面的需求指定系统必须提供的服务。根据对一般的远程协助的调查了解,该系统应该至少包含以下几个功能:
① 服务端对客户端的屏幕监控
远程协助系统就是要解决那些难以用语言描述的软件问题,协助端(服务端)如果能实时的看见被协助端(客户端)的系统桌面,那将大大提高解决问题的效率。当然,为了更方便的操作,协助端还必须能控制被协助端的鼠标和键盘。
系统服务端桌面监控的用例图如图 3—1 所示:
远程协助系统 获取远程桌面 控制远程鼠标 控制远程键盘
② 服务端对客户端文件操作
服务端如果仅仅能监控客户端桌面,那帮助也许没那么大,比如客户端要修复一些文件,
2
而在客户端本地硬盘中又没有相应的修复工具,此时服务端也是为力的。当然,可以通过 QQ、MSN等通讯工具传输,这样做毕竟也是很麻烦的,因此服务端能实现对客户端的文件远程操作则是不可或缺的。文件操作包括:上传文件、下载文件、修改文件名、创建文件夹、 执行远程程序等。
该 功 能 模 块 的 用 例 图 如 图 3—2 所 示 :
上传文件到客户端 下载客户端文件 修改文件名 远程协助系统 服务端 创建文件夹 执行远程程序 3-2
③ 服务端对客户端的高级操作
对于维护和修复一个系统,难免要与系统注册表、系统服务、进程打交道,在桌面监控功能中虽然能实现对这些功能的操作, 但是毕竟受到网络带宽的,远程桌面图片传输较慢,实时性较低。服务端向客户端发送一条命令,客户端针对该命令分别枚举出客户端的注册表、系统服务进程等,再以文本方式发送给服务端,服务端获取到信息后,则可以对注册表、 系统服务、进程做删除、添加、结束等操作.
④ 消息广播
服务端可以同时被多个客户端连接,消息广播则合适企业或学校的管理.在该功能中,服务端有权限阻止客户端发送的广播消息,也有权限向某一客户端发送消息.
⑤ 自动上线
3
自动上线其实就是一种反弹式连接,该功能只需应用在服务端 IP 是动态的情况下。服务端首先要拥有一个动态域名,假设为:HTTP://my-web.com, 然后将此时服务端的 IP 更新到一个页面中,如:HTTP://my—web.com/ip。html,客户端则不断去访问该页面,以便获取服务端最新的IP,然后连接到服务端。
⑥ 进程守护
对于企业或学校的多客户端连接,为了能使得管理顺利进行, 则需对客户端进程进行保护,防止被恶意结束。
4.3 性能需求
为了保证软件能够长期、安全、稳定、可靠、高效的运行,本远程控制软件应该满足以下的性能需求:
1. 准确性与及时性
软件处理的准确性和及时性是软件的必要性能。在软件设计和开发过程中,要充分考虑软件当前和将来可能承受的工作量,使软件的处理能力和响应时间能够满足企业对信息处理的需求。
2. 开放性和可扩充性
远程控制软件在开发过程中,应该充分考虑以后的可扩充性。例如增添其它功能,用户的需求也会不断的更新和完善。所有这些,都要求软件提供足够的手段进行功能的调整和扩充.而要实现这一点,应通过软件的开放性来完成,既软件应是一个开放软件,只要符合一定的规范,可以简单的加入和减少软件的模块,配置软件的硬件.通过软件的修补、替换完成软件的升级和更新换代.
3. 易用性和易维护性
由于远程控制软件是面向的使用人员广泛,这些使用人员不一定对计算机非常熟悉.这就要求软件能够提供良好的用户接口,易用的人机交互界面.要实现这一点,就要求软件应该尽量使用用户熟悉的术语和中文信息的界面;针对用户可能出现的使用问题,要提供足够的帮助,缩短用户对软件熟悉的过程.
4. 标准性
如规范的界面、作为业界标准的TCP/IP网络协议所要求的质量规范等;同时,在自主开发本软件时,要进行良好的设计工作,制订行之有效的软件工程规范,保证代码的易读性、
4
可操作性和可移植性。
5. 安全性
软件注重安全性.如果是正式单位使用远程控制软件,使用者必需拥有这个软件的使用权。否则,如果随便就可以使用,那么被不法分子利用就可以窥看单位里的所有信息,造成不必要的损失。因此,可以配置用户一个密码,拥有正确密码才有权所有该软件。那么,密码文件的加密工作就一定要完善,不能被轻易破解.
6. 响应速度
例如远程控制主机的屏幕,模拟鼠标、键盘向控制主机实现单击等操作,需要较高的响应速度。因此,屏幕发送端在截取屏幕,并压缩屏幕数据的时间应尽量短,而且压缩后的屏幕数据应尽量小,但要保证客户端收到的屏幕数据还原为图片显示的效果不能太差.两者应衡量权重。
4.4 系统流程图
安装好客户端后,客户端则会不断的尝试连接服务器,连接成功了就会根据服务端发送的操作命令执行不同的操作,再将结果返回给服务端,本系统流程图
如图 3-3 所示:
5
服务端
客户端
连接服务器 失败 连接成功 成功 接受并添加客户端信息 发送登录信息 发送操作命令 解析命令 屏幕操作 文件操作 注册表操作 服务操作 进程操作 显示结果 发送结果 继续操作? 关闭系统 3-4
5 参考文献
【1】郑和奇 VC++使用教程 北京:电子工业出版社,2007.177-215 【2】孙鑫 余安平 VC++深入讲解 北京:电子工业出版社,2006 【3】张海潘 软件工程导论 北京:北京大学出版社,2008.91-183 【4】刘伟伟 基于VC++远程控制系统的设计 ,2009
6
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- sarr.cn 版权所有 赣ICP备2024042794号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务