如何使用 PsExec 启用 RDP:分步指南

How to Fix RDP Error Code 0x112f

如果无法直接访问某台计算机,Sysinternals 的 PsExec 是一款可用于远程启用远程桌面协议(RDP)的出色工具。PsExec 允许您远程执行命令,因此非常适合这一用途。

为确保信息在 2025 年仍然最新且有效,我查阅了来自 Microsoft Answers 和 Spiceworks 等可信来源的最新用户指南、论坛和讨论。本指南基于实际反馈和最佳实践,总结了使用 PsExec 启用 RDP 的最新且经过验证的步骤。

下面是一个简化的分步流程,用于在 Windows 10、11 和 Server 2022 上远程启用 RDP:下载并设置 PsExec,修改注册表以启用 RDP,通过防火墙放行 RDP,调整会话限制(可选)检查或重启远程桌面服务,并在需要时使用 PowerShell 进行高级设置。

现在,让我们继续查看详细指南。

1. 下载并配置 PsExec

  1. 下载 PsExec 自官方 Sysinternals 网站:Microsoft Learn 上的 PsExec

     

  2. 解压该文件并将其放在例如 C:\Tools\PsExec. 的目录中

  3. 可选:将 PsExec 添加到系统的 PATH,以便更方便地使用:

     

    • 右键单击 此电脑 > 属性 > 高级系统设置 > 环境变量


    • 在 系统变量 下,找到 Path,并添加 PsExec 所在的目录。

2. 通过注册表编辑器启用 RDP

  1. 以管理员身份打开命令提示符

  2. 运行以下命令以远程修改注册表并启用 RDP:

    psexec \\TargetMachineName reg add “HKLM\System\CurrentControlSet\Control\Terminal Server” /v fDenyTSConnections /t REG_DWORD /d 0 /f

3. 允许 RDP 通过 Windows 防火墙

  1. 运行此命令以启用 RDP 的防火墙规则:

    psexec \\TargetMachineName netsh advfirewall firewall set rule group=”remote desktop” new enable=Yes

  2. 要验证该规则,请运行:

    psexec \\TargetMachineName netsh advfirewall firewall show rule name=”remote desktop”

4. 通过注册表配置 RDP 会话限制 (可选)

要增加允许的 RDP 会话的最大数量,请运行:

psexec \\TargetMachineName reg add “HKLM\System\CurrentControlSet\Control\Terminal Server” /v MaxInstanceCount /t REG_DWORD /d 100 /f

5. 检查并重新启动远程桌面服务

  1. 要检查远程桌面服务是否正在运行:

    psexec \\TargetMachineName sc query TermService

  2. 如果它未在运行,请使用以下命令启动:

    psexec \\TargetMachineName sc start TermService

6. 可选:使用 PowerShell 进行高级配置

使用 PowerShell 远程启用 RDP:

psexec \\TargetMachineName powershell -Command “Set-ItemProperty -Path ‘HKLM:\System\CurrentControlSet\Control\Terminal Server’ -Name fDenyTSConnections -Value 0”

结语

在审阅专家讨论和论坛后,我可以确认,这些用于启用 RDP 的 PsExec 方法在 2025 年仍然有效。如果问题仍然存在,请检查网络连通性、权限或组策略设置。对于更大的网络,考虑使用 PowerShell 脚本将该过程自动化,以简化远程桌面管理。