如何查询Windows以确定每个连接在C ++中使用哪个端口?
答案 0 :(得分: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也是等效的。
答案 1 :(得分:2)
您可以使用getsockname() API查询套接字绑定的端口,然后检查sockaddr_in结构的sin_port字段。
答案 2 :(得分:1)
您可以在Windows上使用命令netstat -b -a
。如果必须,可以将其称为SHELL
电话。