异步socket类创建UDP连接的问题

tom955 2007-04-30 01:41:32
m_sListenSocket为CAsyncSocket变量

m_sListenSocket.Create(SOCK_DGRAM);这句实际意义是什么,自动分配UDP端口号?
可是为什么每次都是使用端口2,因为我用m_sListenSocket.GetSockNameEx(ip,iPort);获得的iPort为2,
但是我直接用m_sListenSocket.Create(2,SOCK_DGRAM);创建后检听会失败。int rete = m_sListenSocket.Listen();rete 为0;


请问下UDP怎么样才能正确的创建??
...全文
295 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
ouyh12345 2007-04-30
  • 打赏
  • 举报
回复
BOOL Create( UINT nSocketPort = 0, int nSocketType = SOCK_STREAM, long lEvent = FD_READ | FD_WRITE | FD_OOB | FD_ACCEPT | FD_CONNECT | FD_CLOSE, LPCTSTR lpszSocketAddress = NULL );

注意协议是第二个参数。
m_sListenSocket.Create(SOCK_DGRAM);创建的是端口为SOCK_DGRAM的tcp协议的socket。

用WSAGetLastError获得错误号
wujiabao 2007-04-30
  • 打赏
  • 举报
回复
UDP是无连接的,不能LISTEN,Create后 BIND一下就可以了

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧