DWORD WINAPI th_Recvthread( LPVOID lp )
{
DWORD CompKey, dwNumBytes ;
goto label_Continue_Recvthread;
label_Continue_Recvthread:
while( g_Threading ) {
try{
bReturn = g_pIOCP->GetStatus( &CompKey, &dwNumBytes, (WSAOVERLAPPED**)&pOverlapped, INFINITE ) ; pRecv_ov = (_h_Recv_Overlapped*)pOverlapped ;
sRecv_sock = pRecv_ov->m_socket;
} int GetStatus(DWORD * pCompKey, PDWORD pdwNumBytes, WSAOVERLAPPED** ppo, DWORD dwMilliseconds = INFINITE) {
return (GetQueuedCompletionStatus(m_hIOCP, pdwNumBytes, pCompKey, ppo, dwMilliseconds));
在192.168.1.12的时候通讯好的.[27]-[1:6:6][INFO]Sever to Server Connect success! (IP:192.168.1.12)
[27]-[1:6:6]ERROR1 dwNumBytes=4
[27]-[1:6:6]********************************************
[27]-[1:6:6]dwNumBytes=4
[27]-[1:6:6]********************************************
[27]-[1:6:6][INFO] Send GS Server info(No:1)
[27]-[1:6:6]ERROR1 dwNumBytes=42
[27]-[1:6:6]********************************************
[27]-[1:6:6]dwNumBytes=42
[27]-[1:6:6]********************************************
[27]-[1:6:6]ERROR1 dwNumBytes=5
[27]-[1:6:6]********************************************
[27]-[1:6:6]dwNumBytes=5
[27]-[1:6:6]********************************************
[27]-[1:6:6]ERROR1 dwNumBytes=518
[27]-[1:6:6]********************************************
[27]-[1:6:6]dwNumBytes=518
[27]-[1:6:6]********************************************
[27]-[1:6:14]ERROR1 dwNumBytes=67
[27]-[1:6:14]********************************************
[27]-[1:6:14]dwNumBytes=67
[27]-[1:6:14]********************************************
[27]-[1:6:14]ERROR1 dwNumBytes=67
[27]-[1:6:14]********************************************
[27]-[1:6:14]dwNumBytes=67
[27]-[1:6:14]********************************************
[27]-[1:8:14]ERROR1 dwNumBytes=67
[27]-[1:8:14]********************************************
[27]-[1:8:14]dwNumBytes=67
[27]-[1:8:14]********************************************
[27]-[1:8:14]ERROR1 dwNumBytes=67
[27]-[1:8:14]********************************************
[27]-[1:8:14]dwNumBytes=67
[27]-[1:8:14]********************************************
[27]-[1:10:14]ERROR1 dwNumBytes=67
[27]-[1:10:14]********************************************
[27]-[1:10:14]dwNumBytes=67
[27]-[1:10:14]********************************************
[27]-[1:10:14]ERROR1 dwNumBytes=67
[27]-[1:10:14]********************************************
[27]-[1:10:14]dwNumBytes=67
[27]-[1:10:14]********************************************
[27]-[1:12:14]ERROR1 dwNumBytes=67
[27]-[1:12:14]********************************************
[27]-[1:12:14]dwNumBytes=67
我把程序考到192.168.1.136就不行了。[27]-[0:45:29][INFO]Sever to Server Connect success! (IP:192.168.1.136)
[27]-[0:45:29]ERROR1 dwNumBytes=4
[27]-[0:45:29]********************************************
[27]-[0:45:29]dwNumBytes=4
[27]-[0:45:29]********************************************
[27]-[0:45:29][INFO] Send GS Server info(No:1)
[27]-[0:45:29]ERROR1 dwNumBytes=42
[27]-[0:45:29]********************************************
[27]-[0:45:29]dwNumBytes=42
[27]-[0:45:29]********************************************
[27]-[0:45:29]ERROR1 dwNumBytes=5
[27]-[0:45:29]********************************************
[27]-[0:45:29]dwNumBytes=5
[27]-[0:45:29]********************************************
[27]-[0:45:29]ERROR1 dwNumBytes=518
[27]-[0:45:29]********************************************
[27]-[0:45:29]dwNumBytes=518
[27]-[0:45:29]********************************************
[27]-[0:45:40]ERROR1 dwNumBytes=0
[27]-[0:45:40]********************************************
[27]-[0:45:40]dwNumBytes=0
[27]-[0:45:40]********************************************
[27]-[0:45:40][SO_ERR] Recv error(Close socket) : socket = 1104, ip = 192.168.1.
136
[27]-[0:45:40][INFO] GS(No.1) Disconnected, User data backup success (0/0)
能帮忙看看出了什么问题不?谢谢啦!

解决方案 »

  1.   

    感觉好像是IP为192.168.1.136的PC一次没问题,第二次你输入信息错误信息了?不清楚了
    你的线程是用来干什么的啊,监听么?建议发在网络编程,线程进程板块
      

  2.   

    终于知道为什么了!xp下开发的,放2003就会有问题!我放xp上都运行好好的!一到2003就出问题! 
    真奇怪!望高人指点!
      

  3.   

    xp和2003的 api有改动吗?高人指点下啊!
      

  4.   

    错误码是什么?
    是你主动关闭还是被动关闭?
    服务端客户端的代码都要检查,是不是因为粘包问题而做出了错误的判断。如3次没有收到正确的包就关闭socket
      

  5.   

    用ACE的时候碰到过2003有问题的情况