客户端向服务器发送消息,从csocket :: receive函数返回的缓冲区大小是消息的正确大小。服务器接收真实消息的正确缓冲区大小,但消息本身比它应该短:
onsend:
UpdateData();
if(m_ClientSocket.send(m_strMessage.GetBuffer(m_strMessage.GetLength()),m_strMessage.GetLength()){}
else {AfxMessageBox(L"failed to send message")}
的onReceive:
TCHAR strRec[256]=L"";
int n=CSocket::Receive(strRec,256);
如果我寄给我:12345
n
将为5
但strRec中的消息会更短,比如12。