我需要在不移动实际鼠标的情况下将鼠标悬停消息发送到窗口中的特定点(窗口是 Flash 程序)。
我正在使用 mouse_event 进行左键单击。
目前我正在将实际鼠标移动到我想在窗口上模拟悬停事件的位置上)但是我不再控制我的鼠标并且做像停止程序这样的事情非常困难,因为程序有所有控制鼠标。
我写了一些我之前获得光标位置并在点击后恢复它的东西。似乎正在工作。
我不知道我是否可以完全避免光标移动,因为那将是绝对的解决方案。
public static void LeftClick(Point position)
{
Point cursorPosition;
GetCursorPos(out cursorPosition);
MoveMouseTo(position.X, position.Y);
mouse_event((int)(MouseEventFlags.LEFTDOWN | MouseEventFlags.LEFTUP | MouseEventFlags.ABSOLUTE), position.X, position.Y, 0, IntPtr.Zero);
SetCursorPos(cursorPosition.X, cursorPosition.Y);
}