【发布时间】:2019-08-18 06:36:10
【问题描述】:
我正在设置一个简单的 C# 应用程序,它将窗口设置为前台并在循环中执行点击。
(几年前我在 Windows 7 上编写了相同的程序。当时一切都运行良好。) 我现在正在使用 Windows 10。
private const int MOUSEEVENTF_LEFTDOWN = 0x0002;
private const int MOUSEEVENTF_LEFTUP = 0x0004;
private const int MOUSEEVENTF_RIGHTDOWN = 0x0008;
private const int MOUSEEVENTF_RIGHTUP = 0x0010;
public void DoMouseClick()
{
int X = Cursor.Position.X;
int Y = Cursor.Position.Y;
mouse_event(MOUSEEVENTF_LEFTDOWN, X, Y, 0, 0);
Thread.Sleep(150);
mouse_event(MOUSEEVENTF_LEFTUP, X, Y, 0, 0);
}
除了第一部分是 MOUSEEVENTF_LEFTDOWN 之外,一切似乎都有效。 如果我手动按住左键,我可以看到程序在下一步释放它,即 MOUSEEVENTF_LEFTUP。
我怎样才能让鼠标按下也有效果?
【问题讨论】:
标签: c# click user32 mousedown mouseup