Esempio n. 1
0
        /// <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);
        }