本文提供了无法运行依赖于终端服务 RemoteApp 会话中Explorer.exe文件的应用程序的问题的解决方法。
原始 KB 数: 951048
现象
请考虑以下场景。 登录到 Windows Server 终端服务 RemoteApp(TS RemoteApp)会话。 TS RemoteApp 会话包括启动应用程序和 Run 注册表项或 RunOnce 注册表项。 然后,尝试在 TS RemoteApp 会话中启动应用程序。 在此方案中,应用程序不会启动。
原因
之所以出现此问题,是因为你尝试启动依赖于Explorer.exe文件的应用程序。 根据设计,TS RemoteApp 会话实现有限的功能。 例如,TS RemoteApp 会话不处理以下项:
- 运行注册表项
- RunOnce 注册表项
- 启动应用程序
解决方法
要解决此问题,请使用下列方法之一。
方法 1:将启动应用程序作为用户的登录设置的一部分运行
若要在 TS RemoteApp 会话中运行启动应用程序,可以在组策略中将启动应用程序指定为用户的登录设置的一部分。 由于组策略控制这些设置,因此指定在用户登录时按预期运行的任何启动应用程序。
若要将启动应用程序指定为用户的登录设置的一部分,请执行以下步骤:
在服务器组策略管理控制台(GPMC)中,单击“本地计算机策略”,单击“计算机配置”,然后单击“管理模板”。
单击“系统”,双击“登录”,然后在用户登录时双击“运行这些程序”。
在 “在用户登录属性 ”对话框中运行这些程序,单击“ 启用”。
单击“显示”,然后单击“添加”。
键入启动应用程序的名称。
注意
除非启动应用程序位于 %SystemRoot% 文件夹中,否则必须指定文件的完全限定路径。
单击“确定”。
方法 2:将Runonce.exe文件与 /AlternateShellStartup 开关一起启动
如果将Runonce.exe文件添加到用户的登录脚本,依赖于Explorer.exe文件的某些应用程序可能会在 TS RemoteApp 会话中运行。 为此,请按照下列步骤进行操作:
在服务器 GPMC 中,单击“本地计算机策略”,单击“用户配置”,然后单击“Windows 设置”。
单击 “脚本”(登录/注销),然后双击“ 登录”。
单击“添加” 。
在“ 脚本名称 ”框中,键入runonce.exe。
在“ 脚本参数 ”框中,键入 /AlternateShellStartup。
单击“确定”两次。