我知道使用win32gui.PostMessage(hwnd, win32con.WM_MOUSEMOVE, wParam, lParam)
,我可以将鼠标移动伪造为未聚焦的应用程序,而不会影响我的真实鼠标。
我如何才能获得我当前的";假鼠标";如果win32api.GetCursorPos()
返回我的真实鼠标光标的位置?
编辑#1:
我在外部应用程序上使用WM_MOUSEMOVE
,因此我唯一拥有的是应用程序的window handle
(HWND(。
您可以使用GetMessagePos
:
检索CCD_ 6函数。
更多参考:是否可以在不劫持光标的情况下使用PostMessage执行MouseMove操作?
编辑
如果您只想通过外部应用程序的HWND获取其消息,则需要使用SetWindowsHookEx
并将其放入dll中,以将其注入外部进程。
您可以使用SetWindowsHookEx
函数、WH_CALLWNDPROC
或其他类型的钩子,下面是一个示例。