0

如何查询 Windows 以确定每个连接在 C++ 中使用的端口?

4

3 回答 3

3

您是否尝试过获取 TCP 表?

您可以向 windows 索要所有 TCP 连接的表,其中显示了本地地址、本地端口、远程地址、远程端口以及具有该连接的程序的进程 ID。

获取表格: http: //msdn.microsoft.com/en-us/library/windows/desktop/bb408406 (v=vs.85).aspx

表条目: http: //msdn.microsoft.com/en-us/library/windows/desktop/bb485761 (v=vs.85).aspx

我不会尝试做一个例子,因为第一个链接有一个很好的例子。如果您需要两种类型的连接,则 UDP 也有等价物。

于 2013-01-08T21:19:41.017 回答
2

您可以使用getsockname() API查询套接字绑定的端口,然后检查sockaddr_in 结构的sin_port 字段。

于 2013-01-08T22:19:34.073 回答
1

netstat -b -a您可以在 Windows 上使用该命令。如果必须,这可以称为SHELL调用。

于 2013-01-08T20:39:47.293 回答