毕业论文论文范文课程设计实践报告法律论文英语论文教学论文医学论文农学论文艺术论文行政论文管理论文计算机安全
您现在的位置: 毕业论文 >> 课程设计 >> 正文

VC++聊天室的实现 第2页

更新时间:2010-3-23:  来源:毕业论文
VC++聊天室的实现 第2页
2. socket 的运用。CClientDlg;                                                     
  CChatSocket: public CSocket.
  CChatSocket: OnReceive()------Dlg-> OnReceive()-
CListeningSocket::OnAccept();
FUNCTION:Just for responding connection request,and hanle it,then build a connect!CClientSocket.
FUNCTION :For user send all type msg;CPtrList(CClientSocket *printer)
FUNCTION:
A list sefed all online user’s socket!
Problem:
1. 我们使用一个链表指针来文护用户信息,在发送消息不是同时进行!逐一实现,考虑!
未实现同时进行。
2. 在发送消息时,如果是一个函数发送两条不同消息。如代码
  if(!sf.IsEmpty())
     {
                        SendMsg(sf,pSocket);
      Sleep(1000);
      CString callNameStr=FindCallName(m_pMsg->m_systemMsg.name);
               CString a="系统消息(L):"+callNameStr+"  进入了聊天室!";
            m_listUser.AddString(callNameStr);
                        a=AddTimeMsg(a);
            m_listMsg.AddString(a);
            SendMsgAll(a);
                        Sleep(1000);
            CString userList=BuildUserListMsg();
            SendMsgAll(userList);
     }
会发生一种情况就是前面的字符还没有读出,后面一条来了,就会两条消息当成一条来处理,目前还没有找到解决方法,暂时通过 时延(Sleep) 来避免这个问题,显然,这个方法影响登陆等过程的效率。唯一比较庆幸的是在传递聊天消息的时候不会出现这种情况,如果出现这种情况是无法接受的
未解决问题:
ActiveX 控键的使用问题,使用了MicroSoft Forms 2.0 listbox ,我想使用VC6.0里面的LISTBOX的方法,两者不可以兼容。而且 ActiveX  不知道是我没查找到还是它没有,感觉方法不全!VC使用COM里面的一些方法时使Listbox中背景图,找不到,也没成功添加Library。存在一个BUG 未解决: 开启服务窗口,在开始服务之前无法关闭窗口。(注意:我也添加了,OnDestroy 处理,结果还是同样问题)4.运行
消息塞选与系统消息。5.总结(收获)。
(1).深入了解了,TCP 传递消息的机制。
(2)熟悉了MFC 大概的使用方法,但是只是最基础的,对MFC编程还存在很大的问题。
(3)对ActiveX控键产生很大的兴趣,还有com .有意学习这个技术,并运用到萌芽基金项目上面。
(4)对网络编程产生很大兴趣。
server
1. 先登陆:帐号密码已经设置好,直接登陆(别改端口号)
2.开始服务
3.终止服务注意:如果是点debug文件夹下面的exe执行,要把客户信息文件包含就去(user.dat 在文件包里面)
Client
1.登陆(登陆信息可以在server上注册,不可以在服务器上,没实现功能)
设置好帐号:hupeng 1988822 (心海红帆)
            jianghe 1988822(江河)
2.未实现密码修改

上一页  [1] [2] 

VC++聊天室的实现 第2页下载如图片无法显示或论文不完整,请联系qq752018766
设为首页 | 联系站长 | 友情链接 | 网站地图 |

copyright©751com.cn 辣文论文网 严禁转载
如果本毕业论文网损害了您的利益或者侵犯了您的权利,请及时联系,我们一定会及时改正。