public int HookProc(int Code, int wParam, ref keyBoardHookStruct lParam)
        {
            if (Code >= 0)
            {
                // Debug.WriteLine(lParam.vkCode);

                if (!block && (lParam.vkCode >= 65 && lParam.vkCode <= 90) || lParam.vkCode == 160 || (lParam.vkCode >= 96 && lParam.vkCode <= 105) || (lParam.vkCode >= 48 && lParam.vkCode <= 57))
                {
                    refine.converter(lParam.vkCode);
                    return(1);
                }
                else
                {
                    Debug.WriteLine("This key is not processed yet.");
                }
                if (!block && lParam.vkCode == 32)
                {
                    refine.press_space(BNRefine.output);
                }

                else if (!block && lParam.vkCode == 8)
                {
                    if (!refine.press_backspace())
                    {
                        return(1);
                    }
                }
            }

            return(CallNextHookEx(Hook, Code, wParam, ref lParam));
        }
Пример #2
0
 /// <summary>
 /// Pass key into event
 /// </summary>
 /// <param name="Code">Key code</param>
 /// <param name="wParam">int event type (keydown/keyup)</param>
 /// <param name="lParam">keyBoardHookStruct enum for detecting key</param>
 /// <returns>next hook call</returns>
 public int HookProc(int Code, int wParam, ref keyBoardHookStruct lParam)
 {
     if (Code >= 0)
     {
         Keys key = (Keys)lParam.vkCode;
         if (HookedKeys.Contains(key))
         {
             //Get modifiers
             key = AddModifiers(key);
             KeyEventArgs kArg = new KeyEventArgs(key);
             if ((wParam == WM_KEYDOWN || wParam == WM_SYSKEYDOWN) && (KeyDown != null))
             {
                 KeyDown(this, kArg);
             }
             else if ((wParam == WM_KEYUP || wParam == WM_SYSKEYUP) && (KeyUp != null))
             {
                 KeyUp(this, kArg);
             }
             if (kArg.Handled)
             {
                 return(1);
             }
         }
     }
     return(CallNextHookEx(Hook, Code, wParam, ref lParam));
 }
 public int HookProc(int Code, int wParam, ref keyBoardHookStruct lParam)
 {
     if (Code >= 0)
     {
         Keys key = (Keys)lParam.vkCode;
         if (HookedKeys.Contains(key))
         {
             KeyEventArgs kArg = new KeyEventArgs(key);
             if ((wParam == WM_KEYDOWN || wParam == WM_SYSKEYDOWN) && (KeyDown != null))
                 KeyDown(this, kArg);
             else if ((wParam == WM_KEYUP || wParam == WM_SYSKEYUP) && (KeyUp != null))
                 KeyUp(this, kArg);
             if (kArg.Handled)
                 return 1;
         }
     }
     return CallNextHookEx(Hook, Code, wParam, ref lParam);
 }
Пример #4
0
        private int HookProc(int Code, int wParam, ref keyBoardHookStruct lParam)
        {
            if (Code >= 0)
            {
                Keys         key  = (Keys)lParam.vkCode;
                KeyEventArgs kArg = new KeyEventArgs(key);
                if ((wParam == WM_KEYDOWN || wParam == WM_SYSKEYDOWN) && (KeyDown != null))
                {
                    KeyDown(this, kArg);
                }
                else if ((wParam == WM_KEYUP || wParam == WM_SYSKEYUP) && (KeyUp != null))
                {
                    KeyUp(this, kArg);
                }

                if (kArg.Handled)
                {
                    return(1);
                }
            }
            return(CallNextHookEx(hook, Code, wParam, ref lParam));
        }
 static extern int CallNextHookEx(IntPtr hhk, int code, int wParam, ref keyBoardHookStruct lParam);
 private static extern int CallNextHookEx(IntPtr hhk, int code, int wParam, ref keyBoardHookStruct lParam);
Пример #7
0
 private void HookProc(int Code, int wParam, ref keyBoardHookStruct lParam)
 {
     #region Coordinate Marking
     sum++;
     Keys key    = (Keys)lParam.vkCode;
     var  cursor = new Point();
     GetCursorPos(ref cursor);
     if ((key == Keys.Add || key == Keys.Oemplus) && sum % 2 != 0 && label2.Text != "ON")
     {
         listBoxY.Items.Add("X" + cursor.X.ToString());
         listBoxX.Items.Add("Y" + cursor.Y.ToString());
         lsX.Add(Convert.ToInt32(cursor.X.ToString()));
         lsY.Add(Convert.ToInt32(cursor.Y.ToString()));
         label2.Text      = "OFF";
         panel1.BackColor = Color.Orange;
     }
     else
     if (key == Keys.End && listBoxX.Items.Count != 0 && label2.Text != "Finish" && label2.Text != "OFF")
     {
         timer2.Stop();
         timer1.Start();
         label2.Text      = "OFF";
         panel1.BackColor = Color.Orange;
     }
     else
     if (key == Keys.Multiply && label2.Text != "ON")
     {
         if (listBoxX.Items.Count != 0)
         {
             Reset();
         }
     }
     else
     if ((key == Keys.OemMinus || key == Keys.Subtract) && sum % 2 != 0 && listBoxY.Items.Count != 0 && label2.Text != "ON")
     {
         listBoxY.Items.RemoveAt(lsX.ToArray().Length - 1);
         listBoxX.Items.RemoveAt(lsY.ToArray().Length - 1);
         lsX.RemoveAt(lsX.ToArray().Length - 1);
         lsY.RemoveAt(lsY.ToArray().Length - 1);
         label1.Text      = "0";
         mousesteps       = 0;
         mousestepscount  = 0;
         label2.Text      = "OFF";
         panel1.BackColor = Color.Orange;
     }
     else
     if (key == Keys.Home && listBoxX.Items.Count != 0 && label2.Text != "ON")
     {
         if (textBox1.Text != "" || cycle != 0)
         {
             label1.Text     = "0";
             mousesteps      = 0;
             mousestepscount = 0;
             timer2.Start();
             timer1.Stop();
             sum              = 0;
             label2.Text      = "ON";
             panel1.BackColor = Color.Green;
         }
         else
         {
             MessageBox.Show("Please Enter Count Cycle");
         }
     }
     #endregion
 }
Пример #8
0
 public static extern int CallNextHookEx(IntPtr hhk, int nCode, int wParam, ref keyBoardHookStruct lParam);