我在编写c/s结构的聊天程序时遇到这个问题:
//设定地址
serv.sin_addr.s_addr=htonl(INADDR_ANY);
serv.sin_family=AF_INET;
serv.sin_port=5000;//htons(5000);
addlen=sizeof(serv);
m_button.EnableWindow(FALSE);
//创建socket
sock=socket(AF_INET,SOCK_STREAM,0);
//绑定
if (bind(sock,(sockaddr*)&serv,addlen))
{
m_edit.SetWindowText("绑定错误");
}
else
{
//m_list.InsertItem(count++,inet_ntoa(serv.sin_addr));
m_edit.SetWindowText("服务器创建成功");
//开始侦听
listen(sock,5);
//调用线程
AfxBeginThread(sthread,0);
这段代码编译没有问题,但是结果是执行了m_edit.SetWindowText("绑定错误");
问如何成功绑定。
还有serv.sin_addr.s_addr=htonl(INADDR_ANY);我不太理解请解释一下
serv.sin_addr的具体结构也是请解释一下
本人不胜感激!
//设定地址
serv.sin_addr.s_addr=htonl(INADDR_ANY);
serv.sin_family=AF_INET;
serv.sin_port=5000;//htons(5000);
addlen=sizeof(serv);
m_button.EnableWindow(FALSE);
//创建socket
sock=socket(AF_INET,SOCK_STREAM,0);
//绑定
if (bind(sock,(sockaddr*)&serv,addlen))
{
m_edit.SetWindowText("绑定错误");
}
else
{
//m_list.InsertItem(count++,inet_ntoa(serv.sin_addr));
m_edit.SetWindowText("服务器创建成功");
//开始侦听
listen(sock,5);
//调用线程
AfxBeginThread(sthread,0);
这段代码编译没有问题,但是结果是执行了m_edit.SetWindowText("绑定错误");
问如何成功绑定。
还有serv.sin_addr.s_addr=htonl(INADDR_ANY);我不太理解请解释一下
serv.sin_addr的具体结构也是请解释一下
本人不胜感激!
解决方案 »
- CWnd::SubclassWindow 把谁的窗口过程用谁的窗口过程替换?
- 不同格式文件内容检索
- VC6.0 MFC 环境下如何使用QueueUserWorkItem
- 让人迷惑的Hello World的问题!
- MFC基于对话框,上面的按钮显示不了,点击也能响应操作
- 超级郁闷问题,高分相送。
- VC++程序的编译.
- 请问怎么做一个ActiveX的例子,里面实现打印预览的功能
- 我装了driverstudio2.01以后,和金山独霸的防火墙冲突,如何解决??
- CIPAddressCtrl的问题,没明白,帮看看
- 怎么样才能让Picture Ctrl接收鼠标的击键事件?
- 很菜的问题,关于ASSERTHE 和CAutoLock的问题,请指教。
sock=socket(AF_INET,SOCK_STREAM,IPPROTO_TCP);check MSDN to get what you need