- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
P2P聊天工具.ppt
P2P聊天工具 问题描述-1 P2P技术概要 点对点传输技术; 无需经过服务器; P2P更加符合分布式计算的理念; BT下载工具是P2P的典型应用之一; 问题描述-2 界面和和实现的功能说明 问题分析 难点解析-1 如何实现侦听 单独开辟一个线程进行侦听,以避免操作阻塞 侦听的方法运行在线程上; 使用TcpListener.Start; 循环、持续检测输入缓冲的是否有信息,读到后解码; 难点解析-1 参考代码: Ls= new TcpListener (1010); Ls.Start(); SocketOfLs = Ls.AcceptSocket(); while (true) { Byte[] streamofaccept = new Byte[80] ; int i = SocketOfLs.Receive(streamofaccept); MessageOfAccept = System.Text.Encoding.UTF8.GetString (streamofaccept); } 难点解析-2 如何把类中侦听到的字符随时传递给窗体控件 在类中定义委托和事件; 侦听到消息后,触发事件; 在窗体中的Form_Load方法中创建对象、订购事件; 在事件被触发时,读取类中的字符信息,写到列表 框中; 难点解析-2 参考代码: //定义事件 public delegate void DelgMsgListened(); public event DelgMsgListened OnMsgListened; //事件在侦听到字符消息时候被触发 OnMsgListened(); //在窗体中预定事件 MyP2P = new P2P(); MyP2P.OnMsgListened+=new P2P.DelgMsgListened(MyP2P_OnMsgListened); 难点解析-3 如何发送数据 获得传送数据的数据流; 在数据流上定义StreamWriter对象; StreamWriter对象写字符信息到流中; reqStreamW.Flush( ); 难点解析-3 参考代码: 建立连接时: tcpStream = tcpClientPere.GetStream ( ); 发送消息时: reqStreamW = new StreamWriter(tcpStream); reqStreamW.Write (sMsg); //sMsg是发送字符串 reqStreamW.Flush ( ) ; 阶段划分 第一阶段(30分钟):设计完成界面 (教员提供界面所需要的图片,学员完成界面设计) 第二阶段(40分钟):实现侦听功能 (编码实现远程机的侦听,并显示侦听消息的功能) 第三阶段(20分钟):实现连接功能 (编码实现本机与远程机的连接功能) 第四阶段(30分钟):实现发送消息的功能 (编码实现本机向远程机发送字符消息并显示的功能) 第五阶段(10分钟):运行和调试 (释放资源) (为程序增加退出的功能) (运行程序,完善代码) 第一阶段 第一阶段(30分钟):设计完成界面 窗体界面无边框,显示在屏幕中间; 连接、断开、退出、发送消息以及登录,使用的都是图片 来代替按钮功能; 中间的齿轮图片是登录按钮,左下的圆圈是发送消息按钮; 中间的大块区域使用ListBox控件显示聊天信息列表,下方 的多行文本框可以输入要发送的聊天信息; 聊天消息使用ListBox来显示; 要求学员自己动手编码,在编码的过程中解答学员提出 的问题 阶段检查 针对第一阶段检查学员的阶段结果 教员进行辅导 第二阶段 第二阶段(40分钟):实现侦听功能 定义类、导入必要的名称空间; 定义委托和事件; 在类中编写方法,实现侦听,并在侦听到消息时触发事件; 编写方法,创建线程,在线程上运行侦听的方法; 在Form_Load中: 创建类的对象-预订对象事件-调用线程方法进行侦听; 在窗体中进行类事件的编码,把侦听到的消息显示在列表框; 要求学员自己动手编码,在编码的过程中解答学员提出的 问题 阶段检查 针对第二阶段检查学员的阶段结果 教员答疑和点评 第二阶段标准代码演示 第三阶段 第三阶段(20分钟):实现连接功能 定义TCPClient对象; 在类中编写连接的方法; 在窗体的”连接”按钮事件中调用方法; 要求学员自己动手编码,在编码的过程中解答学员提出的 问题 阶段检查 针对第三阶段检查学员的阶段结果 教员答疑和点评 第三阶段标准代码演示 第四阶段 第四阶段(30分钟):实现发送消息的功能 在类中编写发送消息的方法; 在窗体中调用方法,并显示发送的消息到列表框
您可能关注的文档
- Lecture 9 The Programming Process.ppt
- Lecture 9Electromagnetic Induction.ppt
- LECTURE 9INTRO TO POWER ELECTRONICS.ppt
- Lecture40&41Edible Vaccines.ppt
- Length-Biased SamplingA Review of Applications.ppt
- Lesson 58 Let's Go to the Park!.ppt
- Lesson 9-4.ppt
- Lezione 9 Termodinamica.ppt
- Linkages.ppt
- Linux Network Configuration.ppt
- Patent Facilitating Centre (PFC).ppt
- Path of Research.ppt
- Pathology of Malaria.PPT
- PCR Basics.ppt
- Phase Detector Circuits.ppt
- Planetary Magnetic Fields.ppt
- POP & Fear of Crime.ppt
- Portfolio Development9-17-04.ppt
- Presenting Organization.ppt
- Probability, Statistics and Errorsin High Energy Physics.ppt
最近下载
- 2023光伏发电工程项目质量管理规程.doc VIP
- 2023光伏逆变器高加速寿命试验技术规范.docx VIP
- NBT 32004-2013光伏发电并网逆变器技术规范.pdf VIP
- LMQ.C型立式灭菌器使用说明书.PDF VIP
- 初中数学_锐角三角函数教学课件设计.ppt VIP
- 《干旱半干旱区光伏电站生态环境保护技术导则》编制情况说明.docx VIP
- 公司章程范本完整.pdf VIP
- NBT 32001-2012 光伏发电站环境影响评价技术规范.docx VIP
- 人教版九年级数学下册第二十八章28.1《锐角三角函数--正弦》 教学设计.doc VIP
- NBT 32008-2013 光伏发电站逆变器电能质量检测技术规程.pdf VIP
文档评论(0)