下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
网络电子教室的广播教学
随着社会对计算机专业技能的需求增加,计算机网络技术的快速发展,传统教育面临着重大挑战。教育改革和现代化是非常重要的。多媒体网络充分利用自身,具有强大的信息交换能力,教师和学生的信息交流能力和高度交叉性,信息形式多种多样。电子教室作为现代教育的环球立交桥,必将把教育的手段引向更深层次。当前电子教室的主要功能有广播教学、文件传输、远程控制、电子白板等。其中,广播教学作为电子教室的核心功能,是开发网络电子教室的关键技术之一。本文在MicrosoftVisualC++6.0开发平台上采用基于TCP/IP协议的Winsock编程原理,设计和实现了电子教室中广播教学功能。1以“广播”的形式边讲好课堂在操作性较强的课堂教学中,传统的教学模式是教师先在黑板上讲授操作步骤和内容,然后指导学生进行实际操作,或是学生通过一台机器或者大屏幕观看老师操作。这样老师需要重复讲授内容和示范,而学生却难以获得深刻的认识,影响了教学效果和兴趣。如果老师利用网络电子教室系统,以“广播”的形式边讲解边操作就会让每个学生都能掌握整个过程,并留下深刻印象。广播教学可将教师机的电脑屏幕画面和语音等多媒体信息实时传送广播给全体、群组或单个学生,使用电子教鞭功能,教师可对任何应用软件进行注释和讲解,达到辅助教学及加强学生学习的目的。2生成句柄来进行管理在Windows中,操作系统是通过句柄来管理资源的。在教师机操作应用程序时,此时的桌面或应用程序的窗口是系统的一种资源,操作系统在内存中指定一个句柄来对这种资源进行管理。要将教师机的桌面或窗口形成位图进行传送,就必须要得到它的句柄。图像经过压缩并通过网络传送到学生机的应用程序端口上,学生机通过网卡将接收到的数据传送给处理程序,处理程序根据接收到的数据在其内存中生成同教师机一样的屏幕图像,并同时产生一个与教师机屏幕同样大小的窗口,然后把内存中的屏幕图像拷贝到此窗口上,这样,就实现了本地机与远程机的屏幕资源共享,如果设置定时器连续地截取教师机屏幕并发送到学生机,就可以实现广播教学的目的。3广播教育功能的设计和实现3.1如何生成文件dc屏幕截取一般有两种方法:一种是基于上层Windows的GDI(GraphicalDeviceInterface)函数的截屏;另外一种是利用底层的DirectDraw。本系统使用前一种方法。设备描述表是Windows应用程序、设备驱动程序和输出设备之间的桥梁,它与一个特定的设备相关联。例如,对显示器来说,设备描述表通常指显示器上的某个窗口。设备描述表描述了所选定的绘图工具、字体、字体颜色、绘图工具在设备上绘制(或者说是映射)的方式以及设备上可使用的输出区域等属性。WindowsGDI函数实际上是在设备描述表里显示正文和绘图。Windows环境是基于图形操作的,图形设备接口(GDI)是一个在Windows应用程序中执行与设备无关的函数库。WindowsGDI的一个重要部分是DC,同时也是Windows所维护的一个结构,当Windows应用程序必须把输出显示到设备上时,它将会用到DC里面所存储的信息。DC存储有关绘图表面(drawingsurface)和它的功能信息。在使用任何GDI函数之前,用户必须为设备创建一个DC,DC一般有以下几个类型:1)显示器DC(DisplayDC)用于把信息显示到标准的视频终端,这是Windows程序中用到最多的DC;2)打印机DC(PrinterDC)用于把信息显示到打印机或绘图机;3)内存DC(MemoryDC)也称为兼容DC(CompatiableDC),它用于执行位图的绘图操作;4)信息DC(InformationDC)用于收集设备的信息。这种DC不能用于真正的数据,然而它们的运行速度非常快,开销极小,而且在收集信息时使用起来十分方便。进行截屏操作的主要步骤如下:1)hRootDC=GetDC(NULL)得到系统最上层窗口的HDC,也就是DeskTop的句柄;2)CreateCompatibleDC(hRootDC)为屏幕设备描述表创建兼容的内存设备描述表;3)用GetDeviceCaps得到屏幕的分辨率,然后确定截取的区域;4)用CreateCompatibleBitmap创建一个与屏幕设备描述表兼容的位图,然后用SelectObject把位图选择到屏幕设备描述表中;5)最后就可以B1tBlt把把屏幕设备描述表拷贝到内存设备描述表中。3.2系统的按动装置Win32系统是消息驱动的平台,所以屏幕内容的变化以及鼠标键盘的按动可以通过系统的消息得到。如何知道系统发送过这些消息,就要用到钩子(HOOK)。3.2.1多线程的网络结构钩子机制允许应用程序截获处理Windows消息或特定的事件。与DOS中断处理机制有类似之处,钩子是Windows消息处理机制的一个平台,应用程序可以在上面设置子程以监视指定窗口的某种消息,而且所监视的窗口可以是其他进程所创建的,当消息到达后,在目标窗口处理函数之前处理它。每一个HOOK都有一个与之相关联的指针列表,称为钩子链表,该链表中的指针指向这个钩子的各个处理子程。一个钩子处理一种类型的消息,当钩子所监视的消息出现时,Windows调用链表中的一个钩子子程。某些类型的钩子只能在系统范围内设置处理子程,其余类型的钩子还可以在特定的线程中设置(用SetWindowsHookEx设置)。对于某一特定类型的钩子(它处理某一类型的消息),线程钩子子程被先调用,接着是系统钩子子程。钩子子程是一个应用程序定义的回调函数(callbackfunction),不能定义成某个类的成员函数,只能定义成普通的C函数。3.2.2安装钩子函数编写钩子程序的步骤分为3步:定义钩子函数、安装钩子和卸载钩子。1)定义钩子函数钩子函数是一种特殊的回调函数。钩子监视的特定事件发生后,系统会调用钩子函数进行处理。不同事件的钩子函数的形式是各不相同的。下面以系统中用到的鼠标钩子函数来说明钩子函数的原型。CallNextHookEx的原型如下:nCode,wParam和1Param是钩子函数。2)安装钩子在程序初始化的时候,调用函数SetWindowsHookEx安装钩子。其函数原型为:参数idHook表示钩子类型,它是和钩子函数类型一一对应的,比如WH_KEYBOARD表示安装的是键盘钩子,WH_MOUSE表示是鼠标钩子等。lpfn是钩子函数的地址。hMod是钩子函数所在的实例的句柄。对于线程钩子,该参数为NULL;对于系统钩子,该参数为钩子函数所在的DLL句柄。dwThreadId指定钩子所监视的线程的线程号。对于全局钩子,该参数为NULL。SetWindowsHookEx成功调用时返回所安装的钩子句柄。3)卸载钩子当不再使用钩子时,必须及时卸载。简单地调用函数BOOLUnhookWindowsHookEx(HHOOKhhk)即可。值得注意的是线程钩子和系统钩子的钩子函数的位置有很大差别。线程钩子一般在当前线程或者当前线程派生的线程内,而系统钩子必须放在独立的动态链接库中,实现起来要复杂一些。3.3教师机屏向复合图文件传输方法3.3.1广播的传播数据传输通常采用单播、广播和组播的方式。单播用来传输一个信息包到一个单独的目标,广播用来发送一个数据包到整个子网,而组播用来发送一个数据包到一组分散在各个子网里的组播组成员。单播实质上是点到点传输,如一个媒体服务器要发送相同的媒体包给多个目标,必须给每个接收者发送一份完全相同的拷贝,单播避免了将数据传送给不必要的接收者,但是每份拷贝经过网络传输,占用极大的网络资源和带宽,且效率极低。广播能够传送一个单独的数据流到整个网,路由器和连接器传播广播,占用资源和带宽,并且无法知道其他网络上节点是否需要广播数据,无效的消耗网络资源。为了阻止广播风暴淹没网络,通常设置路由器来阻止广播的传输,将广播限制在一个物理或者逻辑分段上。组播就是一台主机发出的数据包可以同时被其他多个有资格的主机接收,这台主机和那些有资格的主机就形成了一个组,它们在组里的通信是广播式的。采用这种技术,可以有效减轻网络通信的负担,避免资源的无谓浪费。3.3.2特殊地址的使用组播IP地址是一个D类IP地址,范围在224.0.0.0~239.255.255.255之间。但是,其中还有许多地址是为特殊用途而保留的。比如224.0.0.0根本没有用(也不能用),224.0.0.1代表子网内的所有系统(主机),而224.0.0.2代表子网内的所有路由器,上述2个特殊地址只能由IGMP协议使用。组播地址如表1所示。3.4执行流程学生机流程图如图1所示。4动态特征提取随着社会的信息化程度及国家对教育的重视程度的提高,电子教室必将受到教育机构的重视,本文对电子教室中广播教学的研究将会具有重要的借鉴意义。LRESULTCALLBACKMouseProc(intnCode,WPARAMwParam,LPARAM1Param)参数wParam和1Param包含鼠标消息的信息,比如鼠标位置、状态等。nCode包含有关消息本身的信息,比如是否从消息队列中移出。先在钩子函数中实现自定义的功能,然后调用函数CallNex
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 基础护理主任领导力培养
- 医疗健康产业:政策支持与市场机遇
- 2026年辽宁装备制造职业技术学院单招职业适应性考试模拟试题及答案解析
- 生物医学工程创新技术研讨
- 普外科主任微创手术进展
- 医疗健康信息学应用培训
- 医疗机构内部冲突预防措施
- 艰难梭菌肺炎护理
- 2026年教师资格证(体育学科知识 初级中学)自测试题及答案
- 2025年首都医科大学附属北京天坛医院安徽医院高层次人才招聘18人备考考试题库及答案解析
- 厨师专业职业生涯规划与管理
- 统编版高中政治必修二经济与社会 选择题 专项练习题(含答案)
- 《恒X地产集团地区公司管理办法》(16年12月发文版)
- 智慧社区建设项目施工方案
- 海南槟榔承包协议书
- 仿古建筑概念方案设计说明
- 可持续采购培训
- 竞选村支委演讲稿
- DB32-T 1086-2022 高速公路建设项目档案管理规范
- 核心员工留任与薪酬激励方案
- 知识产权侵权培训课件
评论
0/150
提交评论