使用MFC进行网络编程,实现多线程聊天室
1.MFC网络编程要包含库文件 #include <afxsock.h> ,可以在stdafx.h中包含此文件
2.MFC套接字的初始化可以用AfxSocketInit()这个函数来实现。这个函数可以写在APP类中的initInstance这个函数中。
以下是主要代码实现部分
1.首先编写初始化套接字的函数
//名称:initStocket//
//功能:初始化套接字//
///
BOOL CUdpChatDlg::initSocket()
{
m_socket=socket(AF_INET,SOCK_DGRAM,0);
if(INVALID_SOCKET==m_socket)
{
MessageBox("套接字创建失败");
return FALSE;
}
SOCKADDR_IN addrSock;
addrSock.sin_addr.S_un.S_addr=htonl(INADDR_ANY);
addrSock.sin_family=AF_INET;
addrSock.sin_port=htons(6000);
int retVal;
retVal=bind(m_socket,(SOCKADDR*)&addrSock,sizeof(SOCKADDR));
if(SOCKET_ERROR==retVal)
{
closesocket(m_socket);
MessageBox(_T("套接字绑定失败"));
return FALSE;
}
return TRUE;
}
这个初始化工作