C++ ,服务器能收到客户端的信息,但客户端收不到服务器发回的
socket吧
全部回复
仅看楼主
level 1
西西柚柚1 楼主
服务器端:CAsyncSocket类
客户端:CSocket类
现在的情况是,服务器与客户端建立连接后,服务器能收到客户端发来的信息,但客户端收不到服务器发回的信息。
以下是客户端的创建套接字及连接服务器的过程:
tablesock.Create(0,SOCK_STREAM);
if(tablesock.Connect("127.0.0.1",6802)==0)
{
AfxMessageBox("连接服务器失败!");
OnCancel();
}
else
{
AfxMessageBox("连接服务器成功!");
}
以下是简化的客户端的接收函数:(服务器的接收函数与之类似,能接收成功)
void CTableSocket::OnReceive(int nErrorCode)
{
int iBytesRead;
iBytesRead=Receive(Rdata_buf,sizeof(Rdata_buf)-1);
Rdata_buf[iBytesRead] ='\0';
CString str2=Rdata_buf;
if(str2.Right(8)!="服务终端")
{
AfxMessageBox("收到非法数据!");
return;
}
else
{
AfxMessageBox("收到数据!");
}
CSocket::OnReceive(nErrorCode);
}
结果是显示连接成功的,服务器端也发送成功,可客户端就是收不到,在OnReceive设了断点,结果没走到这一步,那我想就是之前有错误了,可是连接的都好好的啊,请大家帮帮忙,我已经卡在这好久了。。
2015年01月05日 05点01分 1
level 8
套接字是什么?
2015年01月14日 07点01分 2
1