win11远程桌面无法连接时,需按顺序排查并修正:①启用远程桌面功能并授权用户;②启动remote desktop services等三项核心服务;③放行tcp 3389端口;④禁用udp协议;⑤确保注册表fdenytsconnections值为0。

Win11 无法连接远程桌面时,控制端输入账号密码后黑屏、报错0x10b或0x204、被控端锁屏不响应,说明远程连接链路在身份验证、服务状态或网络通路上已中断,必须按顺序排查并修正底层配置。
确认远程桌面功能已启用且用户已授权
这一步是所有后续操作的前提,未完成则连接请求根本不会抵达系统登录界面。
按下 Win + I 打开设置 → 点击左侧“系统” → 滚动到右侧“远程桌面” → 将开关拨至“开”状态。
向下滚动到“远程桌面用户”区域,点击“选择用户” → 在弹出窗口中点击“添加” → 输入被控端上【已设置强密码的本地账户名】(如Administrator)或【已完全登录成功的Microsoft账户邮箱】 → 点击“检查名称”,确认解析无误后点“确定”。
注意:仅管理员组成员不等于自动获得远程权限;若账户仍显示为“本地账户”而非“Microsoft账户”,需先在“设置→账户→你的信息”中完成完整登录流程,否则远程认证会失败。
检查核心服务是否全部运行
Remote Desktop Services 服务一旦停止,远程桌面连接将直接拒绝,图形界面开关无效。
按下 Win + R → 输入 services.msc → 回车打开服务管理器。
依次查找以下三项服务:
① Remote Desktop Services
② Remote Desktop Configuration
③ Remote Desktop Services UserMode Port Redirector
对每一项右键→“属性”→将“启动类型”设为“自动”→若“服务状态”不是“正在运行”,则点击“启动”按钮。
全部启动完成后关闭窗口。这三者缺一不可,任一服务未运行都会导致连接瞬间断开或黑屏。
放行TCP 3389端口并验证防火墙规则
Windows Defender 防火墙默认拦截所有入站RDP请求,即使远程桌面已开启,未放行端口连接也会超时失败。
按下 Win + R → 输入 control → 回车打开控制面板 → 查看方式设为“类别” → 点击“系统和安全” → 点击“Windows Defender 防火墙” → 左侧点击“允许应用或功能通过Windows Defender防火墙”。
点击“更改设置”(需管理员权限)→ 向下滚动找到“Remote Desktop” → 勾选“专用”和“公用”两个复选框 → 点击“确定”。
若列表中无Remote Desktop条目,说明系统未自动生成规则,此时需手动新建入站规则:在防火墙主界面左侧点击“高级设置”→ 右侧“入站规则”→ 右键“新建规则”→ 选择“端口”→ TCP→ 特定本地端口填【3389】→ 允许连接→ 勾选“域、专用、公用”→ 规则名称填“RDP-TCP-3389”→ 完成。
禁用UDP协议避免握手失败
部分网络环境(尤其是NAT设备或企业级防火墙)对RDP的UDP协商支持不佳,会导致连接卡在黑屏或0x10b错误。
方法一(命令行快速执行):
以管理员身份打开Windows终端 → 输入以下命令并回车:
reg add "HKLM\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services\Client" /v fClientDisableUDP /d 1 /t REG_DWORD
方法二(注册表手动创建):
按下 Win + R → 输入 regedit → 导航至路径:
HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Terminal Services\Client
右键右侧空白处 → 新建 → DWORD(32位)值 → 命名为 fClientDisableUDP → 双击该值 → 数值数据填【1】 → 基数选“十进制” → 确定。
修改后无需重启,立即生效。此操作仅关闭客户端UDP探测,不影响TCP主通道通信。
验证远程连接注册表开关是否开启
注册表项 fDenyTSConnections 若被设为1,会强制禁止所有远程桌面连接,图形界面设置将被覆盖失效。
按下 Win + R → 输入 regedit → 导航至:
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server
在右侧找到 fDenyTSConnections → 双击打开 → 确保“数值数据”为【0】 → 若为1,改为0 → 点击“确定”。
若该项不存在,右键空白处 → 新建 → DWORD(32位)值 → 命名为 fDenyTSConnections → 数值设为0。











