孙海民的windows sockets网络开发第五章源码一个有关问题
孙海民的windows sockets网络开发第五章源码一个问题
//连接服务器
if (ConnectServer())
{
ShowConnectMsg(TRUE);
}else{
ShowConnectMsg(FALSE);
ExitClient();
return CLIENT_SETUP_FAIL;
}
这段是客户端的一部分代码。
环境VS2005+XP+SP3
问题:ctrl+F5 运行就进入else部分。加断点,单步执行进入ConnectServer()函数内,
再继续运行就进入if部分。为什么呢??试了好几遍了。。每次都这样
------解决方案--------------------
把这个排除掉就可以了。
//连接服务器
if (ConnectServer())
{
ShowConnectMsg(TRUE);
}else{
ShowConnectMsg(FALSE);
ExitClient();
return CLIENT_SETUP_FAIL;
}
这段是客户端的一部分代码。
环境VS2005+XP+SP3
问题:ctrl+F5 运行就进入else部分。加断点,单步执行进入ConnectServer()函数内,
再继续运行就进入if部分。为什么呢??试了好几遍了。。每次都这样
------解决方案--------------------
把这个排除掉就可以了。
- C/C++ code
int nErrCode = WSAGetLastError(); if( WSAEWOULDBLOCK == nErrCode ||//连接还没有完成 WSAEINVAL == nErrCode) { continue; }else if (WSAEISCONN == nErrCode)//连接已经完成 { break; }else if([color=#FF0000]nErrCode!=10037[/color])//其它原因,连接失败 { return FALSE; }