在 Linux 主机窗口管理器上显示来自 Windows 虚拟机的窗口

在 Linux 主机窗口管理器上显示来自 Windows 虚拟机的窗口

我能够使用 SSH X11 转发在 Windows 客户端上显示 UNIX 计算机的窗口。但是是否可以做相反的事情?假设我有一台 Windows 虚拟机并在其上运行一些软件(与 Wine 配合得不是很好)- 然后我想让 VM 处于无头模式并将应用程序 UI 转发到 Linux 主机上的 X11。

答案1

这里有几种可行的方法。这个帖子(应该在 SU 上)提到了这个问题,并且有一些可用的答案。不过大多数答案都很老了。

微软的官方解决方案是使用一项名为远程应用程序,它允许您通过 RDP 转发单个窗口,而不是发送整个桌面。不过,它仅在 Windows 的服务器版本上得到官方支持(对于主机端),并且您的 Windows VM 可能不是服务器版本。

这篇博文讨论了如何在客户端(“普通”)Windows 版本上运行 RemoteApps。您仍然需要终端服务 (RDP) 服务器,因此您需要 Windows 的专业版/商业版/企业版/教育版/旗舰版;家庭版或类似版本不起作用。博客文章建议使用第三方程序RemoteApp 工具,但该工具的网站说它不适用于专业版/商业版;您需要企业版、旗舰版或教育版。我不知道博客文章中描述的手动注册表编辑是否适用于专业版/商业版。

为了使 RemoteApps 在 Linux 上运行,您可能需要或不需要使用除 之外的程序rdesktop这个问题SF 讨论的答案自由RDPrdesktop,它显然是支持 RemoteApps 的一个分支。

还有一个选项是告诉 Windows 使用自定义 shell(SO 答案中也提到过),它不能用于连接到现有会话,但确实允许您只显示一个应用程序。一个高级用法是无缝RDP,它运行一个自定义 shell,将窗口rdesktop单独转发到客户端。不过,它声称不支持 Win7 或 Win8,这可能意味着它不适用于非服务器版本的 Windows

答案2

我假设你只想启动特定的应用程序,而不是所有的

不幸的是,此功能不存在,您只能在 UNIX 主机上的 Windows 客户虚拟机内启动特定的 Windows 应用程序

使用 RDP 客户端只能是全有或全无

相关内容