mfc Socket通信代码
时间: 2023-11-06 10:06:07 浏览: 138
以下是一个简单的 MFC Socket 通信代码示例:
在头文件中定义以下内容:
```c++
// 定义 socket 对象
CSocket m_socket;
// 定义接收缓冲区
char m_szBuffer[1024];
```
在某个按钮或其他事件的处理函数中添加以下代码:
```c++
// 创建 socket 对象
if (!m_socket.Create())
{
AfxMessageBox(_T("Failed to create socket!"));
return;
}
// 连接到服务器
if (!m_socket.Connect(_T("127.0.0.1"), 1234))
{
AfxMessageBox(_T("Failed to connect to server!"));
return;
}
// 发送数据
CString strData = _T("Hello, server!");
if (m_socket.Send(strData, strData.GetLength() * sizeof(TCHAR)) == SOCKET_ERROR)
{
AfxMessageBox(_T("Failed to send data!"));
return;
}
// 接收数据
int nBytesReceived = m_socket.Receive(m_szBuffer, sizeof(m_szBuffer));
if (nBytesReceived == SOCKET_ERROR)
{
AfxMessageBox(_T("Failed to receive data!"));
return;
}
else if (nBytesReceived == 0)
{
AfxMessageBox(_T("Connection closed by server!"));
return;
}
else
{
m_szBuffer[nBytesReceived] = '\0';
CString strReceivedData = m_szBuffer;
AfxMessageBox(_T("Received data: ") + strReceivedData);
}
// 关闭 socket 对象
m_socket.Close();
```
这段代码会创建一个 socket 对象,连接到指定的服务器(IP 地址为 127.0.0.1,端口号为 1234),发送一条消息并接收服务器返回的消息。注意,在实际使用中需要根据实际情况进行修改。
阅读全文
相关推荐


















