我正在终端服务模式下运行 Windows 2008 Enterprise 32 位安装。我有一个在本地运行的程序,但在与 RDP 连接时不会运行。尝试启动它时,我可以看到该程序在任务管理器中运行,但它从未向用户显示。没有消息,没有错误,除了任务管理器中列出的进程之外什么都没有。没有迹象表明正在发生任何事情。
我已经使用控制面板中的“在终端服务器上安装程序”选项安装了该程序,并且我还尝试使用“更改用户/安装”模式重新安装它。
有什么建议么?
编辑:它在终端服务器 2003 中运行良好。
我正在终端服务模式下运行 Windows 2008 Enterprise 32 位安装。我有一个在本地运行的程序,但在与 RDP 连接时不会运行。尝试启动它时,我可以看到该程序在任务管理器中运行,但它从未向用户显示。没有消息,没有错误,除了任务管理器中列出的进程之外什么都没有。没有迹象表明正在发生任何事情。
我已经使用控制面板中的“在终端服务器上安装程序”选项安装了该程序,并且我还尝试使用“更改用户/安装”模式重新安装它。
有什么建议么?
编辑:它在终端服务器 2003 中运行良好。
不幸的是,应用程序是否会在终端会话中运行取决于它是如何编写的。兼容性问题很可能是由于代码使用了全局命名空间,出于安全原因不再允许使用全局命名空间。我会尝试修改可执行文件的属性,使其在 Windows XP 兼容模式下运行并查看是否有效。有一篇优秀的 Technet 博客文章解释了为什么遗留应用程序会发生这种情况:http: //blogs.technet.com/askperf/archive/2007/04/27/application-compatibility-session-0-isolation.aspx
我不确定您连接的是哪个 Windows 版本。如果是 Vista 或 7,您将需要使用mstsc /admin而不是所描述的 Knox 命令。如果该应用程序在管理会话中工作,则该软件可能需要某种特权提升。
作为连接到控制台会话(会话 0)并查看应用程序是否在那里工作的调试步骤可能很有用。也许应用程序被无意中硬编码为仅在会话 0 中工作。从客户端,尝试
mstsc -v:服务器名 /F -console
如记录在
如何使用 Windows Server 2003 终端服务连接和隐藏控制台会话