如何在不活动窗口中模拟代码中的键盘事件?

如何使用SendWait()将关键笔划发送到窗口而不使用SetForegroundWindow()使目标窗口处于活动状态?

以下是MSDN站点上的SendWait示例: http : //msdn.microsoft.com/zh-cn/library/ms171548.aspx

看到这个线程 。 基本上给了一个窗口的句柄,你需要使用p / invoke并用WM_KEYDOWN消息调用PostMessage :

 private const int VK_RETURN = 0x0D; private const uint WM_KEYDOWN = 0x0100; [DllImport("user32.dll", SetLastError = true)] private static extern bool PostMessage(IntPtr hWnd, uint Msg, IntPtr wParam, IntPtr lParam); public void SendKeysToWindow(IntPtr hWnd) { PostMessage(hWnd, WM_KEYDOWN, new IntPtr(VK_RETURN), IntPtr.Zero); } 

这是虚拟键的列表 。