又一个SOCKET问题~~简单 送分
adwqx 2006-08-02 10:47:09 BOOL CVisurlserverDlg::InitNetwork()
{
WSADATA wsaData;
SOCKET ServerSock;
BOOL ret = WSAStartup(MAKEWORD(2,2), &wsaData);
if(ret != 0)
{
MessageBox("初始化网络协议失败!");
return FALSE;
}
ServerSock=socket(AF_INET,SOCK_STREAM,0);
if(ServerSock == INVALID_SOCKET)
{
MessageBox("创建套接字失败!");
closesocket(ServerSock);
WSACleanup();
return FALSE;
}
sockaddr_in localaddr;
localaddr.sin_family = AF_INET;
localaddr.sin_port = htons(4115); //端口号不要与其他应用程序冲突
localaddr.sin_addr.s_addr =INADDR_ANY;
list.AddString("开始监视!");
if(bind(ServerSock,(LPSOCKADDR)&localaddr,sizeof(localaddr)
== SOCKET_ERROR))
{
MessageBox("绑定地址失败!");
// closesocket(ServerSock);
//WSACleanup();
// return FALSE;
}
///////////////////略去下面的
}
我写的是非阻塞的 套接字
程序运行到if(bind(ServerSock,(LPSOCKADDR)&localaddr,sizeof(localaddr) 总会绑定失败
一直搞不明白怎么回事?
还有就是 m_hwnd 这个句柄 MFC自动给的吗 还是自己去得到的 是不是不主窗体的句秉 ?还是什么
非组塞套接字需要指定主窗口句柄然后传递消息 怎么得到呢 ?
请大家指教
m_hwnd 应该是MFC自动生成的吗?