/// <summary> /// Sends KeyDown and KeyUp messages to the window /// </summary> /// <param name="hwnd"></param> /// <param name="keyCode"></param> /// <param name="extended"></param> public static void SendKey(IntPtr hwnd, int keyCode, bool extended) { uint scanCode = NativeWindowCommon.MapVirtualKey((uint)keyCode, 0); uint lParam; //KEY DOWN lParam = (0x00000001 | (scanCode << 16)); if (extended) { lParam = lParam | 0x01000000; } NativeWindowCommon.PostMessage(hwnd, NativeWindowCommon.WM_KEYDOWN, (int)keyCode, (int)lParam); //KEY UP NativeWindowCommon.PostMessage(hwnd, NativeWindowCommon.WM_KEYUP, (int)keyCode, (int)lParam); }