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

如何确定网络连接使用的端口? 如何查询Windows以确定每个连接在C++中使用哪个端口?,c++,winapi,networking,C++,Winapi,Networking,,可以在Windows上使用命令 NETSTAT-B-A 。如果必须,可以将其称为SHELL调用。您可以在Windows上使用命令netstat-b-a。如果必须,可以将其称为SHELL调用。是否尝试获取TCP表 您可以要求windows提供一个包含所有TCP连接的表,其中显示具有该连接的程序的本地地址、本地端口、远程地址、远程端口和进程ID 获取表格: 表格条目: 我不会尝试做一个例子,因为在第一个链接有一个很好的例子。如果您需要这两种类型的连接,UDP也有相同的功能。您尝试过获取TCP表

,可以在Windows上使用命令<代码> NETSTAT-B-A <代码>。如果必须,可以将其称为
SHELL
调用。

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

是否尝试获取TCP表

您可以要求windows提供一个包含所有TCP连接的表,其中显示具有该连接的程序的本地地址、本地端口、远程地址、远程端口和进程ID

获取表格:

表格条目:


我不会尝试做一个例子,因为在第一个链接有一个很好的例子。如果您需要这两种类型的连接,UDP也有相同的功能。

您尝试过获取TCP表吗

您可以要求windows提供一个包含所有TCP连接的表,其中显示具有该连接的程序的本地地址、本地端口、远程地址、远程端口和进程ID

获取表格:

表格条目:


我不会尝试做一个例子,因为在第一个链接有一个很好的例子。如果您需要这两种类型的连接,UDP也有相应的功能。

您可以通过使用,然后检查结构中sockaddr\u的sin\u port字段来查询套接字绑定到哪个端口。

您可以通过使用,然后检查结构中sockaddr\u的sin\u port字段来查询套接字绑定到哪个端口

“每个连接"? 你是说每个程序?都是
netstat-a
提供了所需的信息?@AustinHenley:一个程序可以有多个连接。因此,查询单个连接是完全有效的。如果需要,可以确定哪个程序拥有给定的连接。@RemyLebeau Right。但我不知道他是在试图找出每个正在运行的程序的所有连接,还是只是一个特定的程序。可能是“每个连接”的重复?你是说每个程序?都是
netstat-a
提供了所需的信息?@AustinHenley:一个程序可以有多个连接。因此,查询单个连接是完全有效的。如果需要,可以确定哪个程序拥有给定的连接。@RemyLebeau Right。但我不知道他是在试图找出每个正在运行的程序的所有连接,还是只是一个特定的程序