我需要在虚拟 Xorg 桌面(比如说桌面 #2)上运行一个应用程序,并通过在根桌面(桌面 #1)上运行的另一个应用程序来控制它。这将包括屏幕截图和鼠标移动。所以基本上我从桌面#2 捕获应用程序窗口,将其抓取,然后通过桌面#1 上的应用程序单击按钮。不管怎样,你明白了。
现在我的大问题是:这可行吗?如果是这样,最好的语言是什么?
顺便说一句,我正在使用 Linux
提前致谢
卢克
如果你在谈论文本模式控制台,那就是:http ://ace-host.stuart.id.au/russell/files/conspy/
大多数窗口管理器通过隐藏不应显示的应用程序来实现桌面管理。
您可以将 xevents 发送到应用程序上的按钮。我怀疑您是否能够捕获应用程序的屏幕内容,因为它没有被映射。
您也许可以在 Xnest 下运行您的应用程序,然后您可以捕获屏幕内容。但是,根据我的经验,Xnest 在某些情况下无法正确呈现应用程序。
这当然是可行的。如果你在 linux 上使用 VirtualBox,那么你可以使用远程桌面协议来远程运行和控制虚拟机。
VirtualBox 支持标准远程桌面协议,其中虚拟机可以充当 RDP 服务器,允许您在仅显示 RDP 数据的瘦客户端上远程“运行”虚拟机。
希望这可以帮助。
你可以x11vnc
在你想控制的 X 服务器上启动,然后通过 VNC 控制它。
或者我认为 X11 可以直接模拟事件。你当然可以抓取窗口的内容。查看代码以xwd
获取获取窗口位图图像的示例。