Exemplo n.º 1
0
 int KeyboardProc(int nCode, int wParam, ref tagKBDLLHOOKSTRUCT lParam)
 {
     if (nCode == HC_ACTION)
     {
         if (lParam.vkCode == keyCode_ && (wParam == WM_KEYDOWN || wParam == WM_SYSKEYDOWN) &&
             (HotkeyDownEvent != null))
         {
             // if ALT is required
             if (modifiers_ == 0x0001 /*MOD_ALT*/)
             {
                 // if 5th bit is 1, ALT was pressed
                 if ((lParam.flags & 0x0020) != 0)
                 {
                     HotkeyDownEvent();
                     handled_ = true;
                 }
             }
             else
             {
                 HotkeyDownEvent();
                 handled_ = true;
             }
         }
     }
     return(CallNextHookEx(globalHook_, nCode, wParam, lParam));
 }
Exemplo n.º 2
0
        private int KeyboardProc(int nCode, int wParam, IntPtr lParam)
        {
            int  Result        = 0;
            bool vEatKeystroke = false;

            if (((IntPtr)User.GetFocus() == this.Handle) && (nCode == User.HC_ACTION))
            {
                if ((wParam == User.WM_SYSKEYDOWN) || (wParam == User.WM_SYSKEYUP))
                {
                    tagKBDLLHOOKSTRUCT vPKB = (tagKBDLLHOOKSTRUCT)Marshal.PtrToStructure(lParam, typeof(tagKBDLLHOOKSTRUCT));
                    if (vPKB.flags == LLKHF_ALTDOWN)
                    {
                        if (vPKB.vkCode == User.VK_SPACE)
                        {
                            FInputHelper.ShowEx();
                            vEatKeystroke = true;
                        }
                    }
                }
            }

            if (vEatKeystroke)
            {
                Result = 1;
            }
            else
            if (nCode != 0)
            {
                Result = User.CallNextHookEx(IntPtr.Zero, nCode, wParam, lParam);
            }

            return(Result);
        }
Exemplo n.º 3
0
 int KeyboardProc(int nCode, int wParam, ref tagKBDLLHOOKSTRUCT lParam)
 {
     if (nCode == HC_ACTION)
     {
         if (lParam.vkCode == keyCode_ && (wParam == WM_KEYDOWN || wParam == WM_SYSKEYDOWN) &&
             (HotkeyDownEvent != null))
         {
             HotkeyDownEvent();
         }
     }
     return(CallNextHookEx(globalHook_, nCode, wParam, lParam));
 }
Exemplo n.º 4
0
 [DllImport("user32.dll")]  static extern int CallNextHookEx(IntPtr hhk, int nCode, int wParam,
                                                             tagKBDLLHOOKSTRUCT lParam);
Exemplo n.º 5
0
 static extern int CallNextHookEx(IntPtr hhk, int nCode, int wParam,
                                  tagKBDLLHOOKSTRUCT lParam);