视频传输与远程控制Word文件下载.docx
- 文档编号:19656879
- 上传时间:2023-01-08
- 格式:DOCX
- 页数:14
- 大小:312.92KB
视频传输与远程控制Word文件下载.docx
《视频传输与远程控制Word文件下载.docx》由会员分享,可在线阅读,更多相关《视频传输与远程控制Word文件下载.docx(14页珍藏版)》请在冰豆网上搜索。
4
1、显示远程桌面模块的功能结构:
2、远程控制模块:
5
(二)、被主控端系统设计与功能结构:
1、发送桌面信息模块:
2、响应控制模块:
6
四、系统实现:
(一)、系统实现思路:
(二)、系统流程图:
7
(三)软件实现:
1、主控端程序:
2、被控端程序:
8
程序代码:
10
心得体会:
13
远程控制技术是指用本地计算机通过网络去控制一台或多台远程主机的技术。
当用户使用本地计算机控制远程主机时,就如同坐在远程主机的屏幕前一样,可以启动远程主机的应用程序,可以使用远程主机的文件资料,甚至可以利用远程主机的外部打印设备和通信设备来进行打印和访问互联网。
远程控制系统一般分为客户端程序和服务端程序两大部分,使用前要将客户端按在本地计算机上,将服务端程序安装在远程主机上。
在本地计算机上执行客户端程序,向远程主机中的服务端程序发出信号,建立一个特殊的远程服务,在通过这个远程服务使用各种远程控制功能发送远程控制命令,控制远程主机中的各种应用程序运行。
能够随时对局域网中的主机惊醒远程监控。
实时性高、通信量小、界面友好、操作简单、功能齐全并有一定的安全措施。
系统基本框架:
在支持TCP/IP协议的局域网中,本地计算机与远程主机通过物理网络相连。
远程主机运行倍空段程序,坚挺固定端口等待连接;
本地计算机运行主控端程序,连接指定端口。
连短的程序通过套接字Socket建立连接并通过Socket输入输出流收发信息,实现件事和控制功能。
图2-1系统基本框图
总体功能结构包括主控端和被控端两大部分。
其中主控端包括三大模块,即:
本地的配置管理模块、接收远程主机发送的桌面信息并绘制到组件显示,实现监视功能模块和发送控制信息实现对远程主机的控制功能模块;
被控端也包括三大模块,即:
本地配置管理模块、获取并发送桌面图片为主控端的件事提供信息服务模块和响应主控端的控制请求模块,按控制信息进行指定的操作。
图3-1总体功能结构
主控端程序是远程桌面监控系统两大组成部分之一,他要实现对远程主机的基本件事功能,在控制功能上还要对各个细节加以实现。
除此之外,还要实现系统的基本配置功能,这都增加了程序的复杂性。
对系统分块处理时降低其复杂性的有效方法,本系统将主控端程序分为三大模块,逐一实现。
图3-2主控端配置管理模块
它是主控端的核心部分,不仅需要读取输入流中的数据并解码,而且要将图片绘制到自己创建的容器中。
图3-3主控端显示远程桌面模块
主要实现对远程主机的鼠标和键盘进行控制。
图3-4主控端远程控制模块
被控端程序同主控端程序一样也是远程桌面监控系统的重要组成部分,他不仅要抓取桌面图片,并且编码后发送到输出流,还要按照主控端的控制请求执行相应操作。
图3-5被控端配置管理模块
为减少通信量,抓取图片后都遇上一次抓取的图片进行比较,如果相同则不发送,反之再发送。
图3-6被控端发送桌面信息模块
根据主控端的控制信息,执行相应的键盘和鼠标操作。
图3-7响应控制模块
首先被控端监听设定的端口,等待主控端的链接请求。
主控端链接指定端口,与被控端建立连接后被控端抓取桌面图像,编码后发送。
主控端接受图像,解码后绘制到组件上显示。
主控端发送控制请求,被控端响应请求并按控制信息进行相应操作。
图4-1程序总体流程图
主控端程序包括远程桌面监控线程和配置管理线程。
(1)、配置管理模块:
主要功能是接受用户输入的数据,定义远程主机的IP和端口号。
①、流程图:
图4-2主控端程序流程图
(2)、远程桌面显示模块:
主要功能是将接收到的图片数据解码并绘制到创建的组件上。
能根据组件的大小缩放图片,并在程序运行时改变组件的大小。
图4-3远程桌面显示模块流程图
②、运行效果:
图4-4运行结果
被控端程序包括配置管理线程、端口监听线程和图片发送线程。
主要功能是根据用户的操作改变被控端的系统设置。
图4-5被控端程序流程图
(2)、发送桌面信息模块:
主要功能是定时抓取桌面图片,编码后写入输出流。
图4-6发送桌面信息模块流程图
(3)、响应控制模块:
主要功能是根据主控端的控制信息,执行相应的键盘和鼠标操作。
publicclassServerextendsThread{
privateDimensionscreenSize;
privateRectanglerectangle;
privateRobotrobot;
publicServer()
{
screenSize=Toolkit.getDefaultToolkit().getScreenSize();
rectangle=newRectangle(screenSize);
//可以指定捕获屏幕区域
try{
robot=newRobot();
}
catch(Exceptione)
e.printStackTrace();
System.out.println(e);
}
publicvoidrun()
ZipOutputStreamos=null;
Socketsocket=null;
while(true)
try
socket=newSocket("
192.168.1.100"
5001);
//连接远程IP
BufferedImageimage=robot.createScreenCapture(rectangle);
//捕获制定屏幕矩形区域
os=newZipOutputStream(socket.getOutputStream());
//加入压缩流
//os=newZipOutputStream(newFileOutputStream("
C:
/1.zip"
));
os.setLevel(9);
os.putNextEntry(newZipEntry("
test.jpg"
JPEGCodec.createJPEGEncoder(os).encode(image);
//图像编码成JPEG
os.close();
Thread.sleep(50);
//每秒20帧
}
catch(Exceptione){
e.printStackTrace();
}finally
{
if(os!
=null)
os.close();
}catch(Exceptionioe){
}
if(socket!
socket.close();
}catch(IOExceptione){
}
publicstaticvoidmain(String[]args){
newServer().start();
publicclassClientextendsJFrame{
privatestaticfinallongserialVersionUID=1L;
DimensionscreenSize;
publicClient(){
super();
this.setSize(800,640);
Screenp=newScreen();
Containerc=this.getContentPane();
c.setLayout(newBorderLayout());
c.add(p,SwingConstants.CENTER);
newThread(p).start();
SwingUtilities.invokeLater(newRunnable(){
publicvoidrun(){
setVisible(true);
}});
newClient();
classScreenextendsJPanelimplementsRunnable{
privatestaticfinallongserialVersionUID=1L;
privateImagecimage;
ServerSocketss=null;
ss=newServerSocket(5001);
//探听5001端口的连接
while(true){
Sockets=null;
s=ss.accept();
ZipInputStreamzis=newZipInputStream(s
.getInputStream());
zis.getNextEntry();
cimage=ImageIO.read(zis);
//把ZIP流转换为图片
repaint();
}catch(Exceptione){
}finally{
if(s!
=null){
try{
s.close();
if(ss!
ss.close();
}catch(IOExceptione){
publicScreen(){
this.setLayout(null);
publicvoidpaint(Graphicsg){
super.paint(g);
Graphics2Dg2=(Graphics2D)g;
g2.drawImage(cimage,0,0,null);
通过本门课程的学习,我对远程控制的知识有了一些了解,在网上和书中查阅资料的过程中,让我了解了远程控制的基本原理与基本组成。
在完成大作业的过程中,遇到一些问题,经过小组成员相互讨论和请教同学之后,将问题解决。
增强了我们的自学能力和团队协作精神。
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 视频 传输 远程 控制