我做一个东东,用socket,用send发送数据到127.0.0.1:80/index.asp,接收数据并进行判断,再用send发送数据到127.0.0.1:80/worng.asp 或127.0.0.1:80/yes.asp,怎么就出现错误了,SOCKET_ERROR == iResult 了,这是什么原因?

解决方案 »

  1.   

    那你通过WSAGetLastError来获取返回值,看看什么地方出错了~~~
    SOCKET_ERROR == iResult
    这个iResult是什么??
      

  2.   

    因为连续send不行,所以我先shutdown(),closesocket(),再connect一次,这就出错了啰int iResult; 
        iResult=connect(sock,(struct sockaddr *)&addr, sizeof(addr)); 
    if(SOCKET_ERROR == iResult) 

    // 连接失败 
    WSACleanup();
    printf("连接失败%d",WSAGetLastError());
    return false; 

    else { 
    // 连接成功 
    }
      

  3.   

    shutdown(),closesocket()
    那你关闭之后,是不是仅仅是关闭客户段阿~~
    然后没有关闭服务器端,然后就直接去连接服务器端阿??
      

  4.   

    我发送过去的数据有:"Connection: close\r\n",这不就是IIS会自动关闭连接的么?
      

  5.   

    Connection: close
    那有可能~~