【发布时间】:2019-12-02 16:26:13
【问题描述】:
我正在尝试在最小化窗口中自动单击鼠标。
由于我的屏幕/桌面坐标与进程/窗口坐标不同,我遇到了问题。
这是我正在测试的代码:
Function MakeDWord(LoWord As Integer, HiWord As Integer) As Long
Return New IntPtr((HiWord << 16) Or (LoWord And &HFFFF))
End Function
SendMessage(_targetProcess.MainWindowHandle, WM_LBUTTONDOWN, 0&, MakeDWord(x, y))
SendMessage(_targetProcess.MainWindowHandle, WM_LBUTTONUP, 0&, MakeDWord(x, y))
代码正在运行,它将鼠标点击发送到所需的窗口,但不是正确的坐标。
所以,我需要找到我想要点击的窗口区域的相对坐标,而不是桌面/屏幕坐标。
有什么方法可以检测发送到进程/窗口的事件以获取相对坐标?
例如,在 Visual Studio 中有一个名为 spy++ 的工具可以工作,但现在我不会将点击发送到我自己的应用程序。
【问题讨论】:
标签: vb.net process automation window