C++ 局域网聊天室设计问题
我是一名喜欢编程的非计算机学生,我想实现一个局域网聊天室的程序,不带界面的简单的控制台版TCP客户端/服务器我写过,我想实现带界面的。主要功能如下:
1.两台客户端可以通过一台服务器来进行聊天(这个我知道怎么做)
2.比如QQ程序,好友上线了以后,客户端会显示好友上线了,此时好友的头像是高亮显示的;好友下线以后,客户端好友的头像就会变灰了,这个是怎么来编程实现呢?
我看网上的视频说,先在服务器端保存客户端的“在线状态”、“IP地址”、“端口号”、“用户名”“密码”,我大概能看懂他讲的是个什么意思?但是我还是写不出来,好像是没啥思路,还是有点无从下手的感觉。
3. 我现在在培训班上课,跟着一个班听了点网络,服务器端用侦听套接字进行侦听,当有客户端来连接服务器的时候,服务器调用Accept来接受客户端连接。成 功以后,使用新的套接字,就可以进行服务器和客户端之间的通信了,发送数据和接收数据呗。也不难啊,但是我为什么还是写不出完整的聊天室呢?纠结中,在网 上找了点资料也没有完整的实现局域网聊天室的例子。我想要个完整的,最好是能聊天,传文件,语音视频,发送表情,有离线文件,好友上线能够高亮显示的,网 上的基本上也就是能聊天而已,,,该咋办尼
4.今天请教下同学,他们说如果MFC不好实现的话,那服务器端用linux,客户端仅仅用于显示(接到什么包就用于显示什么),服务器和客户端通过发包来解决问题,聊天时发送聊天包,好友更新时发送聊天包,广播时发送广播包,登录时发送登录包,等等。
我仔细想想,也是啊,怎么构造协议包我原来接触过一点,应该能写出来。
我感觉写个大点的东西,我脑子里面就有点乱,东写点西写点,要不就是照网上的抄袭点源代码,拼凑一下子,我真心想自己写出来点东西!!!希望大家帮我分析下,我这样的情况怎么样来解决???
有学计算机的同学遇到过和我类似的情况吗?
或者有从事计算机行业的前辈,指点一下我这只it行业的小鸟,非常感谢!!!!
说明下,网络的一些基础知识我都懂。
[解决办法]