MFC下写的一个基于TCP的聊天室程序

上传者: xingco | 上传时间: 2019-12-21 22:03:29 | 文件大小: 72KB | 文件类型: rar
本科生产实习做的 客户端实现的详细清单: 1、进入程序的时候光标默认在昵称栏中,回车的默认是“发送”按钮,“断开”按钮默认为不可用 2、用户必须先连接上服务器才能使用聊天室,否则点击“发送”按钮将提示“你还没有登录”,服务器的IP可以进行选择或者输入,默认为本机环回 3、用户不能使用已经使用的昵称重复登录,昵称不能为空,但可以又空格 4、登录成功后“连接”按钮,昵称框,服务器框 都变为不可用,“断开”可用,消息框将显示“xxx刚刚进入了聊天室”,并在用户列表显示当前已登录的用户列表。断开后变化还原 5、说话对象默认为“所有人”,对所有人不能使用“悄悄话”功能 6、双击用户列表的某一行,或者直接在“对象”下拉菜单中选择说话的对象 7、“悄悄话”只有自己和对象可以看见,否则所有人都能看到 8、每一则消息的最大长度为468个字节,约234个汉字(含符号) 9、“清屏”按钮可以清空消息显示框的内容,并将“对象”菜单还原到“所有人” 10、消息显示框滚动条可以自动保持在显示内容的最底端,用户可以任意对消息框中的信息进行拖选和复制 11、所有聊天记录将自动保存在程序目录下的“昵称.txt”文件中 12、“断开”按钮可以不用退出程序而退出聊天事,用户选择“断开”或者关闭程序时,其他用户将提示“xxx刚刚离开了聊天室” 13、服务器踢出某用户,或者被关闭时将提示“被管理员踢出聊天室(或服务器关闭)” 14、服务器显示时能够识别说话对象是否为“你” 15、不能对自己说话 16、不能发空信息 17、每次发送信息后以及通过双击用户列表选中某个用户时,光标将默认处于“消息”框中以方便发送 18、当对某个人说话,而这个人退出时,提示“对象错误” 服务器端实现的详细清单(暂时只支持32个用户) 1、自动启动服务 2、用户登录后显示用户列表 3、可以选中某个用户将其踢出聊天室 4、对需要显示的信息添加时间后缀 5、对用户登录请求进行响应,不允许同名用户重复登录 6、对用户聊天数据进行转发 7、当用户列表发生 变化时,广播用户列表报文(目前的办法只实现了小于32个用户的情况)

文件下载

资源详情

[{"title":"( 38 个子文件 72KB ) MFC下写的一个基于TCP的聊天室程序","children":[{"title":"chat","children":[{"title":"client.exe <span style='color:#111;'> 32.00KB </span>","children":null,"spread":false},{"title":"server","children":[{"title":"tst.dsp <span style='color:#111;'> 4.01KB </span>","children":null,"spread":false},{"title":"StdAfx.cpp <span style='color:#111;'> 205B </span>","children":null,"spread":false},{"title":"resource.h <span style='color:#111;'> 818B </span>","children":null,"spread":false},{"title":"tst.plg <span style='color:#111;'> 1.81KB </span>","children":null,"spread":false},{"title":"tst.h <span style='color:#111;'> 1.26KB </span>","children":null,"spread":false},{"title":"tst.dsw <span style='color:#111;'> 531B </span>","children":null,"spread":false},{"title":"tst.clw <span style='color:#111;'> 1.08KB </span>","children":null,"spread":false},{"title":"tstDlg.cpp <span style='color:#111;'> 9.70KB </span>","children":null,"spread":false},{"title":"ReadMe.txt <span style='color:#111;'> 3.44KB </span>","children":null,"spread":false},{"title":"StdAfx.h <span style='color:#111;'> 1.08KB </span>","children":null,"spread":false},{"title":"tst.aps <span style='color:#111;'> 35.02KB </span>","children":null,"spread":false},{"title":"tst.cpp <span style='color:#111;'> 2.07KB </span>","children":null,"spread":false},{"title":"res","children":[{"title":"tst.rc2 <span style='color:#111;'> 395B </span>","children":null,"spread":false},{"title":"tst.ico <span style='color:#111;'> 3.55KB </span>","children":null,"spread":false},{"title":"Thumbs.db <span style='color:#111;'> 5.00KB </span>","children":null,"spread":false}],"spread":false},{"title":"tst.rc <span style='color:#111;'> 5.48KB </span>","children":null,"spread":false},{"title":"tstDlg.h <span style='color:#111;'> 1.36KB </span>","children":null,"spread":false}],"spread":false},{"title":"client","children":[{"title":"tst.dsp <span style='color:#111;'> 4.01KB </span>","children":null,"spread":false},{"title":"StdAfx.cpp <span style='color:#111;'> 205B </span>","children":null,"spread":false},{"title":"resource.h <span style='color:#111;'> 1.25KB </span>","children":null,"spread":false},{"title":"tst.plg <span style='color:#111;'> 955B </span>","children":null,"spread":false},{"title":"tst.h <span style='color:#111;'> 1.26KB </span>","children":null,"spread":false},{"title":"tst.dsw <span style='color:#111;'> 531B </span>","children":null,"spread":false},{"title":"tst.clw <span style='color:#111;'> 1.57KB </span>","children":null,"spread":false},{"title":"tstDlg.cpp <span style='color:#111;'> 11.47KB </span>","children":null,"spread":false},{"title":"ReadMe.txt <span style='color:#111;'> 3.44KB </span>","children":null,"spread":false},{"title":"StdAfx.h <span style='color:#111;'> 1.08KB </span>","children":null,"spread":false},{"title":"tst.aps <span style='color:#111;'> 36.31KB </span>","children":null,"spread":false},{"title":"tst.cpp <span style='color:#111;'> 2.07KB </span>","children":null,"spread":false},{"title":"res","children":[{"title":"tst.rc2 <span style='color:#111;'> 395B </span>","children":null,"spread":false},{"title":"tst.ico <span style='color:#111;'> 3.55KB </span>","children":null,"spread":false},{"title":"Thumbs.db <span style='color:#111;'> 5.00KB </span>","children":null,"spread":false}],"spread":false},{"title":"tst.rc <span style='color:#111;'> 7.15KB </span>","children":null,"spread":false},{"title":"abc.txt <span style='color:#111;'> 281B </span>","children":null,"spread":false},{"title":"tstDlg.h <span style='color:#111;'> 1.64KB </span>","children":null,"spread":false}],"spread":false},{"title":"server.exe <span style='color:#111;'> 28.00KB </span>","children":null,"spread":false},{"title":"readme.txt <span style='color:#111;'> 1.66KB </span>","children":null,"spread":false}],"spread":true}],"spread":true}]

评论信息

  • zp27 :
    感觉挺不错的,值得参考
    2020-06-01
  • linanggong8491 :
    写的不错,刚好哟要用到
    2017-10-07
  • namefortest :
    不错,值得参考,谢谢
    2017-03-17
  • qq_18977917 :
    此资源非常好, 供学习使用,感谢
    2016-12-08
  • jx347638458 :
    分有点多啊不值
    2015-11-30

免责申明

【只为小站】的资源来自网友分享,仅供学习研究,请务必在下载后24小时内给予删除,不得用于其他任何用途,否则后果自负。基于互联网的特殊性,【只为小站】 无法对用户传输的作品、信息、内容的权属或合法性、合规性、真实性、科学性、完整权、有效性等进行实质审查;无论 【只为小站】 经营者是否已进行审查,用户均应自行承担因其传输的作品、信息、内容而可能或已经产生的侵权或权属纠纷等法律责任。
本站所有资源不代表本站的观点或立场,基于网友分享,根据中国法律《信息网络传播权保护条例》第二十二条之规定,若资源存在侵权或相关问题请联系本站客服人员,zhiweidada#qq.com,请把#换成@,本站将给予最大的支持与配合,做到及时反馈和处理。关于更多版权及免责申明参见 版权及免责申明