网络聊天室的设计与实现的具体功能要求如下:
- 聊天室服务器端的创建。
- 聊天室客户端的创建。
- 实现客户与服务器的连接并通信。
- 实现客户端的实时更新聊天室信息。
- 实现服务器端当前在线多客户信息。(还未实现)
- 实现聊天室里的所有用户实时共享信息。
https://download.youkuaiyun.com/download/weixin_48453983/13755183
服务器

Caption |
ID |
服务启动 |
IDOK |
退出服务 |
IDCANCEL |
发送 |
IDC_BUTTON1 |
客户机

Caption |
ID |
进入聊天室 |
IDOK |
退出聊天室 |
IDCANCEL |
发送 |
IDC_SEND |
消息实现


- 服务启动:
创建(socket)绑定(bind)套接字ServerSocket,WSAAsyncSelect设置ServerSocket异步模式,监听客户连接请求(listen),建立一个客户接收请求的链表结点。
- 发送:
循环遍历客户链表发送(send)字符串(buff)给连接的客户机
LRESULT CTestDlg::OnAccept(WPARAM wParam, LPARAM lParam)
{
if (WSAGETSELECTERROR(lParam))
{
list.InsertString(0,"Error detected on entry into OnServerAccept.");
return 0L;
}
int nlen=sizeof(SockAddr);
if(WSAGETSELECTEVENT(lParam)