未来丶梦而已 发表于 2014-5-14 22:03:17

写了一个简单的聊天系统,用ip138提供的IP地址收不到消息,只能用127.0.0.1

服务端socket初始化代码:
//初始化套接字

SOCKADDR_IN addrSock;
addrSock.sin_addr.S_un.S_addr=htonl(INADDR_ANY);
addrSock.sin_family=AF_INET;
addrSock.sin_port=htons(5941);
m_socket=WSASocket(AF_INET,SOCK_DGRAM,0,NULL,0,0);

//检查套接字初始化是否错误
if(INVALID_SOCKET==m_socket)
{
MessageBox("创建套接字失败!");
return FALSE;
}

//绑定端口和套接字
if(SOCKET_ERROR==bind(m_socket,(SOCKADDR*)&addrSock,sizeof(SOCKADDR)))
{
MessageBox("绑定失败!");
return FALSE;
}


//创建异步套接字
if(SOCKET_ERROR==WSAAsyncSelect(m_socket,m_hWnd,UM_SOCK,FD_READ))
{
MessageBox("注册网络事件失败!");
return FALSE;
}
客户端socket初始化代码:

m_socket=WSASocket(AF_INET,SOCK_DGRAM,0,NULL,0,0);
if(INVALID_SOCKET==m_socket)
{
MessageBox("创建套接字失败!");
return FALSE;
}

if(SOCKET_ERROR==WSAAsyncSelect(m_socket,m_hWnd,UM_SOCK,FD_READ))
{
MessageBox("注册网络事件失败!");
return FALSE;
}



by024 发表于 2014-5-14 22:03:18

前些天,我用delphi 写出来过。这个和你的程序没有关系。你一定有用路由,将路由映射到你IP上,外网的就可以用了。就是你那ip138的也可以用的。
页: [1]
查看完整版本: 写了一个简单的聊天系统,用ip138提供的IP地址收不到消息,只能用127.0.0.1