- 1、本文档共26页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
PP聊天工具
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分钟):实现发送消息的功能 在类中编写发送消息的方法; 在窗体中调用方法,并显示发送的消息到列表框
您可能关注的文档
- MobileFireRescueDepartmentEMSDivision.ppt
- ModernMacroeconomicsFromtheShortRuntotheLongRun.ppt
- ModeratelyHighRefractiveIndexLowOpticalDispersionPolymerswithPendantDiamondoids郑州大学化学系级李洋.ppt
- ModuleASocialSurveyMyNeighbourhood.ppt
- Module4Education.ppt
- ModuleAgeUnitDim'sAge.ppt
- ModuleIncidentandEventPlanning.ppt
- ModuleLaoSheTeahouse本模块重点.ppt
- ModuleGreatbooks.ppt
- ModuleDailyroutine.ppt
- 甘肃省酒泉市金塔县等4地2024-2025学年高一上学期11月期中考试数学试题【含解析】.pdf
- 浙江省宁波市余姚中学2024-2025学年度高二上学期10月月考数学试题【含解析】.docx
- 河南省商开大联考2022-2023学年高一上学期期中考试数学试卷【含解析】.pdf
- 重庆市开州中学2024-2025学年高二上学期第一次月考数学试题【含解析】.docx
- 云南省昆明仁泽中学2024-2025学年度高二上学期10月月考数学试卷【含解析】.docx
- 《环境文本数据加工处理技术规范》.pdf
- 《区域大气环境承载力监测预警技术规范》.pdf
- 《环境空气温室气体光声光谱法连续自动监测仪技术要求及检测方法》.pdf
- 《美丽城市建设数据分级分类规范》.pdf
- 《大数据优化区域空气质量模拟排放输入数据技术规范》.pdf
最近下载
- 网络预约出租汽车企业安全生产责任制和事故报告制度.pptx
- SY-T 5051-2009 钻具稳定器-石油天然气行业标准.pdf VIP
- 22G101-3 混凝土结构施工图平面整体表示方法制图规则和构造详图(独立基础、条形基础、筏形基础、桩基础).docx
- 模板支架验收记录表.doc
- 标准个人租房合同模板.pdf VIP
- 2024年全国疾控系统大学习实验室质量控制规范答案.docx VIP
- 2024-2025学年初中道德与法治七年级(全一册)统编版(五四学制)(2024)教学设计合集.docx
- 小学劳动教育五年级下册第五单元2《维修凳子》教学设计.docx
- 北师大版五年级数学上册第五单元《分数的意义》(大单元教学设计).docx VIP
- 简易呼吸球囊.ppt
文档评论(0)