【发布时间】:2012-03-17 15:50:13
【问题描述】:
如果我只有 SOCKET,我能找到端口号吗?我正在挂钩 ws2_32 调用,似乎 SOCKET 正在尝试发送数据,但我没有关于此 SOCKET 的信息。我想知道是否有办法从 SOCKET 获取 sockaddr 或端口?
我在 UDP 套接字上遇到了类似的问题,但我通过在 sockaddr 即将发送数据时获取端口号并更新了我的相关信息来修复它。但问题是,除了 SOCKET 之外,我没有其他东西可做。
该程序正在使用端口 0 创建一个 SOCKET,然后将其分配给一个新端口。到那时,我的程序在套接字上的信息已经使用端口 0 设置,这是不正确的。所以,我需要找到一种方法... A:根据 SOCKET 找到端口,或者 B:当 windows 更新端口时,我可以挂钩并更新端口。
【问题讨论】: