在VM上移动鼠标

时间:2015-10-01 22:12:10

标签: python

我正在尝试使用这个简单的代码移动我的鼠标。

import win32api, win32con
def click(x,y):
    win32api.SetCursorPos((x,y))
    win32api.mouse_event(win32con.MOUSEEVENTF_LEFTDOWN,x,y,0,0)
    win32api.mouse_event(win32con.MOUSEEVENTF_LEFTUP,x,y,0,0)
click(10,10)

我的机器正在运行MacOS,我在我的计算机上使用Windows 7运行虚拟机。当我在我的虚拟机上运行此代码时,它不会移动实际鼠标,而是使用"鬼鼠标&# 34;点击。当我尝试使用此代码在Windows桌面计算机上移动鼠标时,您可以看到光标移动(与我的VM不同)。

有什么想法让我的虚拟机上的实际鼠标光标通过python移动吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

据我所知,我真的不相信这是可能的。对于所有VM都知道,主机甚至不存在(大多数情况下)。 VM做的一件主要事情是从主机沙箱客户端。 (见security.SE)。

另一件事是,这将是一个巨大的安全问题。如果我可以从VM访问您的计算机,那么我可以表面上点击并安装恶意软件。

现在抓住了:你可能可以。

VMS可以通过网络与主机通信,因此如果您有一台服务器在主机上监听通信,并且主机在读取通信后移动光标,那么是。请注意,此方法需要显式设置主机以侦听客户端。我所知道的任何方法都不允许VM在没有主机“监听”的情况下直接与主机交互。