本文主要为广大网友提供“基于网络的虚拟实验平台---远程指导模块的设计与实现”,希望对需要基于网络的虚拟实验平台---远程指导模块的设计与实现网友有所帮助,学习一下!
包括论文,设计,论文字数:13484,页数:29
摘 要
基于网络的虚拟实验平台是在能够进行网络通信的基础之上将计算机上虚拟的各种仪器、器件,按实验要求组装成一个完整的实验环境,实现搭接实验电路,演示实验过程等功能。远程指导模块是其中的一个功能模块。它分成指导端和被指导端两部分,指导端通过HOOK技术,采集本地机鼠标和键盘信息;然后将这些信息打包,通过P2P网络通信机制将信息包传给被指导端;在被指导端将信息包信息解出,通过mouse_event、keybd_event等函数去控制被指导端的鼠标、键盘动作,实现相关的一些远程指导动作。本模块在VC环境下开发,用到了Windows Socket编程技术,P2P编程思想,HOOK技术,多线程技术等多方面的技术。由于整个系统模块很多,本设计中编写了独立的测试程序,经过测试基本达到预期的设计目标。
关键词:远程指导;P2P;Windows Socket编程;HOOK;多线程
Design and Implementation of Remote Guidance Module Based on Network Virtual Experiment Platform
Abstract
Under the foundation of network communications,the network-based Virtual Experimental Platform could integrate various computer virtual devices into a complete experimental environment according to the experiment requirements, and connect the experiment circuit and demonstrate the process of experiment. The remote guiding module was one of function modules, which was divided into guiding end and the guided end. With HOOK, the guiding end captured the information of local mouse and keyboard, and packed the information to send to the guided part through peer-to-peer network communication mechanism. The guided end will unpack the information, and control the mouse and keyboard of the guided end by mouse_event, keybd_event functions to implement some remote control actions. Developed under VC environment, the remote guidance module used Windows Socket programming technology, P2P programming ideas, HOOK technology, multithreading technology, and etc. Because there are many modules for the whole system, an independent testing procedure was programmed to test the modules, which had been proven to achieve the desired objectives
Key words: Remote guidance;Peer-to-Peer;Windows Socket programming;HOOK;Multithreading
目 录
1引言 1
1.1项目背景 1
1.2项目介绍 1
1.2.1 基于网络的虚拟实验平台 1
1.2.2 远程指导模块 2
1.3 项目要求 2
1.3.1 功能要求 2
1.3.2 Client rver(客户端/服务器)结构工作过程 2
2 网络基础知识简介 3
2.1 OSI与TCP/IP参考模型的对应关系 3
2.1.1 OSI参考模型 3
2.1.2 TCP/IP参考模型 4
2.2 Windows Socket编程原理及操作步骤 5
2.3 P2P网络介绍 8
3 相关函数分析与代码实现 8
3.1多线程 8
3.1.1 进程介绍 8
3.1.2 线程介绍 8
3.1.3 进程与线程的关系 9
3.1.4 多线程实现 9
3.2 Hook技术 9
3.2.1 Hook函数简介及类型 9
3.2.2 Hook子过程处理 12
3.2.3 Hook的安装/卸载 13
3.3 设计流程及函数思想 15
3.3.1 简述 15
3.3.2 代码分析 15
4 程序测试与相应改进 18
4.1 程序界面 18
4.2程序相关测试 19
4.2.1 获取对方相关信息 19
4.2.2发送消息及存贮 19
4.2.3被指导端显示信息 20
4.3 相关改进 20
结 论 20
参考文献 21
致 谢 22
声 明 23