c#-模拟鼠标移动/单击/键在不活动的应用程序中按

我知道如何模拟鼠标和键盘事件,但是它们的行为就像用户执行它们一样,因此它们将影响活动的窗口.我需要模拟这些输入之一,但要在一个不活动的窗口中.

我并不是说将其最小化,例如,假设您有msPaint和记事本.记事本在油漆前面.您想在绘制窗口的某些坐标上模拟鼠标单击,但是没有将其设置为活动状态,因此用户可以继续使用处于绘制区域的记事本.

这有可能吗?谢谢!

我已经试过了:

            const int WM_KEYDOWN = 0x100;
        Thread.Sleep(5000);
        Process x = Process.Start(@"C:\WINDOWS\NOTEPAD.EXE");
        PInvokes.PlatformInvokeUSER32.SendMessage(x.MainWindowHandle, WM_KEYDOWN, ((int)Keys.W), 0);

但这不起作用=(不做任何事情:(

解决方法:

您可以尝试UI automation API.它也支持旧版应用程序.

上一篇:MQTT通信协议在Unity中的应用之——JS实现


下一篇:如何使用C和Windows API向Windows 7发送击键/消息?