CSocket::Receive()的时候返回值是-1
加入GetLastError(),返回值是183

解决方案 »

  1.   

    "当文件已存在时,无法创建该文件"的确是官方解释.
    能告诉我在
    CSocket::Receive()的时候返回值是-1
    加入GetLastError(),返回值是183
    是不是调用Receive()的对象上出的问题?
      

  2.   

    183似乎不是Receive返回的,CAsyncSocket::Receive的返回值一般都大于10000
      

  3.   


    使用这个就可以知道错误代码是什么意思了
    LPVOID lpMsgBuf;
    FormatMessage( 
        FORMAT_MESSAGE_ALLOCATE_BUFFER | 
        FORMAT_MESSAGE_FROM_SYSTEM | 
        FORMAT_MESSAGE_IGNORE_INSERTS,
        NULL,
        GetLastError(),
        MAKELANGID(LANG_NEUTRAL, SUBLANG_DEFAULT), // Default language
        (LPTSTR) &lpMsgBuf,
        0,
        NULL 
    );
    // Process any inserts in lpMsgBuf.
    // ...
    // Display the string.
    MessageBox( NULL, (LPCTSTR)lpMsgBuf, "Error", MB_OK | MB_ICONINFORMATION );
    // Free the buffer.
    LocalFree( lpMsgBuf );
      

  4.   

    去你VC的安装目录下,有个Error Lookup的工具,输入错误值,就会返回给你这个值的意义。