Visual C++网络编程技术-04

上传人:fgh****35 文档编号:253059464 上传时间:2024-11-28 格式:PPT 页数:19 大小:591.50KB
返回 下载 相关 举报
Visual C++网络编程技术-04_第1页
第1页 / 共19页
Visual C++网络编程技术-04_第2页
第2页 / 共19页
Visual C++网络编程技术-04_第3页
第3页 / 共19页
点击查看更多>>
资源描述
单击此处编辑母版文本样式,第二级,第三级,第四级,第五级,*,单击此处编辑母版标题样式,网络编程技术,简易聊天室,授课教师:,网络编程,导入,在电子教室软件系统中,教师经常需要根据课程内容将学生分组,每个小组完成一个任务。每个小组的小组成员之间需要进行讨论,所以需要有一个简单的聊天室功能,使多个成员之间可以很方便的进行沟通和交流。本章我们就通过一个简单的聊天室程序,来介绍一下使用,UDP,协议进行通信的相关技术。,本章要点,聊天室功能分析设计,WinSock,实现,UDP,通信,CSocket,类实现,UDP,通信,聊天室开发,功能需求分析,聊天室服务器功能:,启动一个新的聊天室。,能记录所有登录的聊天者信息。,能接收聊天者程序发来的聊天信息,并显示到界面上。,能把一个聊天者发来的信息发送给所有其他聊天者。,聊天者程序功能:,能登录到聊天室服务器。,能发送聊天信息给聊天室服务器。,能接收服务器发回的其他人的聊天信息,并显示在自己的界面上。,界面设计,关键技术分析,聊天室的核心功能就是多个点之间的数据传递,本章讲解另一种面向非连接的基于,UDP,协议的,socket,通信技术来实现聊天室实例,面向非连接的通信,“面向非连接”就是在正式通信前不必与对方先建立连接,不管对方状态就直接发送。,与现在风行的手机短信非常相似:你在发短信的时候,只需要输入对方手机号就可以了。,UDP,(,User Data Protocol,,用户数据报协议)是与,TCP,相对应的协议。它是面向非连接的协议,它不与对方建立连接,而是直接就把数据包发送过去。,UDP,通信流程图,核心程序实现,发送和接收的的数据包的定义,struct,MEG,int,code;/,包的编号,char data500;/,数据内容,Meg;,c,ode,:数据包的编号,d,ata,:要传输的数据,核心程序,发送,UDP,数据包,void,CSendUDPDlg:OnSend,(),UpdateData(true,);,struct,MEG/,发送数据对象的定义,int,code;/,包的编码,char data500;,Meg;,CSocket,m_SendSocket,;/,构造一个套接字对象,Meg.code,=1;,strcpy(Meg.data,m_message,);/,发送数据的初始化,int,port=8888;/,对方的监听端口,m_SendSocket.Create(6666,SOCK_DGRAM,);/,创建一个套接字句柄(,UDP,),m_SendSocket.SendTo,(&,Meg,sizeof(Meg),port,m_ip,);,m_SendSocket.Close,();,核心程序,接收,UDP,数据包,void,CReceiveUDPDlg:OnServer,(),struct,MEG,int,code;/,包的编码,char data500;,*,pMeg,;,CSocket,m_ReceiveSocket,;/,构造一个套接字对象,char*buff512;,m_ReceiveSocket.Create(8888,SOCK_DGRAM,);,m_ReceiveSocket.Receive(buff,512);,pMeg,=(,struct,MEG*)buff;/,非常关键,m_show.AddString(pMeg,-data);,m_ReceiveSocket.Close,();,程序扩展,实现点对点聊天,接收对方聊天信息功能流程,程序扩展,实现聊天室,聊天室程序设计的思路是由一个服务器端程序和一个聊天者端程序组成。,服务器端程序主要负责记录所有进入本聊天室的聊天者的,IP,地址,并且接收所有聊天者的信息,将每个聊天者发来的信息转发给所有聊天者。,聊天者程序可以发送聊天信息给服务器,同时可以接收服务器发送回来的信息,并显示到聊天记录界面上。,聊天室服务器端程序主要功能:,(,1,)记录所有进入本聊天室的聊天者,IP,(以便转发其他聊天者的聊天信息)。,(,2,)启动一个子线程,用于接收聊天者数据包。,(,3,)接到数据包,取出,IP,地址,存入聊天者列表(重复的不要)。,(,4,)将接收到的聊天信息转发给聊天者列表中的每个聊天者。,(,5,)将接收到的聊天信息添加到界面的列表控件中。,聊天室服务器功能流程,聊天者程序功能:,(,1,)进入聊天室,发送数据包给聊天室服务器。,(,2,)接收服务器发送回来的信息,并显示到聊天记录界面上。,实现代码详见教材,本章技能训练实例,题目一:将第一章的扫描可控计算机程序改为用,UDP,协议的通信技术实现。,题目二:将前一章的网络考试报名系统改为基于,UDP,协议的通信技术实现。,题目三:模仿群的模式,给你的几个好朋友建立一个共用的聊天群。可以几个人一起讨论需求和设计,在本章的简易聊天室程序基础上完善和开发,完成这个小应用软件,并在实际使用过程中测试它。,Thank You!,
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 机械制造 > 工业自动化


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!