远程调试器端口分配

Visual Studio 远程调试器可作为应用程序或后台服务运行。 当它作为应用程序运行时,它将使用默认分配的端口,如下所示:

  • Visual Studio 2022:4026

  • Visual Studio 2019:4024

  • Visual Studio 2017:4022

  • Visual Studio 2015:4020

  • Visual Studio 2013:4018

  • Visual Studio 2012:4016

换而言之,分配给远程调试器的端口数每个版本递增 2。 你可以根据需要设置其他端口号。 我们会在后面部分说明如何设置端口号。

32 位操作系统上的远程调试器端口

TCP 4026(在 Visual Studio 2022 中)是除 Azure 应用服务外所有方案都必需的主端口。 可以从命令行或远程调试器窗口配置此端口。

TCP 4024(在 Visual Studio 2019 中)是所有方案都必需的主端口。 可以从命令行或远程调试器窗口配置此端口。

在远程调试器窗口中,单击“工具”>“选项”,并设置 TCP/IP 端口号。

在命令行中,通过 /port 开关启动远程调试器:msvsmon /port <端口号>

可以在远程调试帮助(在远程调试器窗口中按 F1 或单击“帮助”>“用法”)中找到所有远程调试器命令行开关。

64 位操作系统上的远程调试器端口

当启动 64 位版远程调试器时,它默认使用主端口 (4026)。 如果调试 32 位进程,则在大多数情况下 64 位版远程调试器将在端口 4025 上启动 32 位版远程调试器。 如果运行 32 位远程调试器,则它使用 4026,而不使用 4025。 例外的情况是,如果安装了适用于 Visual Studio 2022 版本 17.2 或更高版本的远程工具,并且使用远程调试器配置向导将远程调试器作为服务启动,则默认 32 位调试端口将是 4040 而不是 4025。

当启动 64 位版远程调试器时,它默认使用主端口 (4024)。 如果调试 32 位进程,则 64 位版远程调试器会在端口 4025(主端口号加 1)上启动 32 位版远程调试器。 如果运行 32 位远程调试器,则它使用 4024,而不使用 4025。

此端口可在命令行中进行配置:Msvsmon /wow64port <端口号>

Microsoft Azure 应用服务上的远程调试器端口

远程调试器端口可配置。 目前,Azure 应用服务未使用与 Visual Studio 版本关联的默认端口。 Azure 应用服务将端口 4024 用于远程调试器。

发现端口

UDP 3702 用于在网络上查找远程调试器的运行实例(例如,“附加到进程”对话框中的“查找”对话框)。 它仅用于发现运行远程调试器的计算机,因此如果你有某种其他方式来了解计算机名或目标计算机的 IP 地址,则它是可选的。 此端口是用于发现的标准端口,因此无法对其进行配置。

发现端口必须作为出站端口(出站规则)打开。

如果你不想启用发现,可以在禁用发现的情况下从命令行启动 msvsmon:Msvsmon /nodiscovery

请参阅