我想做用mfc一个简单的tcp/ip 通信的程序 
代码如下:
     m_addr.sin_family = AF_INET;
m_addr.sin_addr.S_un.S_addr =INADDR_ANY;
m_addr.sin_port = htons(m_uPort);
int ret = 0;
//绑定一个套接字到本机的地址
ret = bind(m_hSocket, (LPSOCKADDR)&m_addr, sizeof(m_addr));
if(ret == SOCKET_ERROR)
{ //绑定错误
AfxMessageBox("绑定出错!");
return FALSE;
}
但是总是返回 ret = -1 哪位高手能告诉我这是为什么 
另外 我的程序原来是单机版的后来才加上通信部分

解决方案 »

  1.   

    GetLastError看看是什么错误ID
    或者没有WSAStartup ?    LPSTR p;
        FormatMessage(0x1100, 0, GetLastError(), 0, (LPSTR)&p, 0, 0);
        MessageBox(0, p, NULL, 0);
        LocalFree(p);
      

  2.   

    ret = bind(m_hSocket, (LPSOCKADDR)&m_addr, sizeof(m_addr)); 改为:
    ret = bind(m_hSocket, (SOCKADDR *)&m_addr, sizeof(SOCKADDR)); 
      

  3.   

    使用WSAGetLastError函数查看错误