启用 Microsoft RemoteFX 3D 视频适配器后,远程桌面无法连接到基于 VDI 的远程计算机

本文提供了远程桌面无法连接到基于虚拟桌面基础结构(VDI)的远程计算机的问题的解决方案。

适用于: Windows 7 Service Pack 1、Windows Server 2008 R2 Service Pack 1
原始 KB 数: 2820155

现象

在基于 VDI 的物理计算机或 Hyper-V 服务器上托管的虚拟机上安装 RemoteFX 3D 视频适配器后,尝试使用远程桌面连接连接到计算机时,可能会失败。 此外,可能会收到类似于以下内容的错误消息:

由于以下原因之一,远程桌面无法连接到远程计算机:

  1. 未启用服务器的远程访问
  2. 远程计算机已关闭
  3. 远程计算机在网络中不可用

请确保远程计算机已打开并已连接到网络,并且已启用远程访问。

还可以在 Windows 事件日志中收到以下错误:

日志名称:Microsoft-Windows-TerminalServices-LocalSessionManager/Operational
来源:Microsoft-Windows-TerminalServices-LocalSessionManager
日期: <日期><时间>
事件 ID:17
级别: 错误
用户: 系统
计算机:machinename.domain.com
说明:
远程桌面服务启动失败。 相关状态代码0x800706b5。

注意

如果从 VM 中删除 RemoteFX 3D 视频适配器,则可以使用 RDP 连接到计算机。

原因

随着适用于 Windows 7 和 Windows Server 2008 R2 的 Service Pack 1 的发布,为 RemoteFX 添加了新的 Windows 防火墙规则。 如果未启用 RemoteFX Windows 防火墙规则,则会出现此问题。

有关 Microsoft RemoteFX 的详细信息,请访问以下Microsoft网站:

Microsoft RemoteFX

解决方法

若要解决此问题,必须手动启用 RemoteFX Windows 防火墙规则。

使用具有高级安全性的 Windows 防火墙启用 RemoteFX 规则

  1. 单击“开始”按钮,然后单击“控制面板”。
  2. 控制面板窗口中,单击“Windows 防火墙”。
  3. 在左窗格中,单击“ 允许程序或功能通过 Windows 防火墙”。
  4. 单击“更改设置” 。 如果系统提示您输入管理员密码或进行确认,请键入密码或进行确认。
  5. 在“允许的程序和功能”下,选中远程桌面 - RemoteFX 旁边的复选框,然后使用列中的复选框选择要允许通信的网络位置类型。
  6. 单击“确定”。

或者,如果使用“系统属性”窗口启用远程桌面,则会自动启用该规则。

  1. 单击“开始”按钮,然后单击“控制面板”。

  2. 单击 “系统 ”图标。

  3. 在“控制面板主页”下,单击“远程设置”。

  4. 单击“远程”选项卡。在远程桌面下,选择“不允许连接到此计算机”,然后单击“应用”。

  5. 现在,根据安全要求选择任一选项:

    • 允许运行任何版本的远程桌面的计算机建立连接(不安全)
    • 仅允许使用网络级别身份验证运行远程桌面的计算机建立连接(更安全)
  6. 单击 “应用 ”,然后单击 “确定”。

详细信息

如果使用任一方法启用 VDI 计算机的远程桌面,则必须手动启用 RemoteFX Windows 防火墙规则:

  1. 使用 WMI 命令:

     wmic rdtoggle where (AllowTSConnections=0) call SetAllowTSConnections 1  
    
  2. 切换注册表:
    REG.exe ADD "HKLM\SYSTEM\CurrentControlSet\Control\Terminal Server" /v fDenyTSConnections /t REG_DWORD /d 0

  3. 使用 netsh 命令或 Windows 防火墙 API 为远程桌面启用防火墙例外:

     netsh advfirewall firewall set rule group="remote desktop" new enable=Yes  
    
  4. 使用 Microsoft TechNet 脚本中心提供的 PowerShell 脚本来配置 VDI 桌面。

  5. 在已启用远程桌面的虚拟桌面上升级到具有 SP1 的 Windows 7。