开发工具:
文件大小: 131kb
下载次数: 0
上传时间: 2011-06-07
详细说明: 服务器端有个CSocket 的派生类CListeningSocket对象指针来监听端口等待用户登陆, 而用另一个CSocket 的派生类对象CClientSocket 的指针组来处理和每一个客户端的交互过程。派生类CListeningSocket的回调函数OnAccpet()与客户端建立套接字层次的连接。派生类CClientSocket 的回调函数OnReceive()与接收每一个已连接的数据传输。CMsg* CServerDoc::ReadMsg(CClientSocket* pSocket) {static CMsg msg; //CMsg包含消息的格式和方法 CClientSocket* pSock;//创建客户端sock TRY//捕捉异常 { pSocket->ReceiveMsg(&msg);//接收消息 if(msg.type=="-1")//判断消息类型 { bool found=false; for(POSITION posname=m _connectionList.GetHeadPosition();posname;) { pSock = (CClientSocket*)m_connectionList.GetNext(posname); if(pSock->name==msg.from ) {found=true; pSocket->needdel=true; delsocket(); return NULL; } } if(found==false) { pSocket->name=msg.from; Message1(msg.from); Message1("进入聊天室\r\n"); } } if(msg.type=="-2") { Message1(msg.from); Message1("离开聊天室\r\n");} int i=atoi(msg.type); if(i>=0 && i<=32) { talk(i,msg.from,msg.to,msg.m_strText); } m_msgList.AddTail(msg.m_strText); typelist.AddTail(msg.type); fromlist.AddTail(msg.from); tolist.AddTail(msg.to); seclist.AddTail(msg.sec); clrlist.AddTail(msg.clr); } 打开客户端,显示客户端登陆界面: ...展开收缩
(系统自动生成,下载前可以参看下载内容)
下载文件列表
相关说明
- 本站资源为会员上传分享交流与学习,如有侵犯您的权益,请联系我们删除.
- 本站是交换下载平台,提供交流渠道,下载内容来自于网络,除下载问题外,其它问题请自行百度。
- 本站已设置防盗链,请勿用迅雷、QQ旋风等多线程下载软件下载资源,下载后用WinRAR最新版进行解压.
- 如果您发现内容无法下载,请稍后再次尝试;或者到消费记录里找到下载记录反馈给我们.
- 下载后发现下载的内容跟说明不相乎,请到消费记录里找到下载记录反馈给我们,经确认后退回积分.
- 如下载前有疑问,可以通过点击"提供者"的名字,查看对方的联系方式,联系对方咨询.