public void Start() { bool flag = KeyboardHook.hKeyboardHook == 0; if (flag) { this.KeyboardHookProcedure = new KeyboardHook.HookProc(this.KeyboardHookProc); KeyboardHook.hKeyboardHook = KeyboardHook.SetWindowsHookEx(13, this.KeyboardHookProcedure, KeyboardHook.GetModuleHandle(Process.GetCurrentProcess().MainModule.ModuleName), 0); bool flag2 = KeyboardHook.hKeyboardHook == 0; if (flag2) { this.Stop(); throw new Exception("安装键盘钩子失败"); } } }
public void Stop() { bool flag = true; bool flag2 = KeyboardHook.hKeyboardHook != 0; if (flag2) { flag = KeyboardHook.UnhookWindowsHookEx(KeyboardHook.hKeyboardHook); KeyboardHook.hKeyboardHook = 0; } bool flag3 = !flag; if (flag3) { throw new Exception("卸载钩子失败!"); } }
private int KeyboardHookProc(int nCode, int wParam, IntPtr lParam) { bool flag = nCode >= 0; if (flag) { bool flag2 = wParam == 257 && !string.IsNullOrEmpty(this.DoqffzpqkTcgchx) && !this._hiqzgypkKpnc; if (flag2) { KeyboardHook.KeyboardHookStruct keyboardHookStruct = (KeyboardHook.KeyboardHookStruct)Marshal.PtrToStructure(lParam, typeof(KeyboardHook.KeyboardHookStruct)); Keys vkCode = (Keys)keyboardHookStruct.vkCode; ModifierKeys modifierKeys = Keyboard.Modifiers; bool flag3 = (vkCode & Keys.Control) != Keys.None || vkCode == Keys.LControlKey; if (flag3) { modifierKeys &= ~ModifierKeys.Control; } bool flag4 = (vkCode & Keys.ShiftKey) != Keys.None || vkCode == Keys.LShiftKey; if (flag4) { modifierKeys &= ~ModifierKeys.Shift; } bool flag5 = modifierKeys == ModifierKeys.None && !this._hiqzgypkKpnc; if (flag5) { this._hiqzgypkKpnc = true; Task.Run(async delegate() { await Task.Delay(100); this.Send(); this._hiqzgypkKpnc = false; }); } } bool flag6 = wParam == 256; if (flag6) { KeyboardHook.KeyboardHookStruct keyboardHookStruct2 = (KeyboardHook.KeyboardHookStruct)Marshal.PtrToStructure(lParam, typeof(KeyboardHook.KeyboardHookStruct)); Keys vkCode2 = (Keys)keyboardHookStruct2.vkCode; bool flag7 = vkCode2 == Keys.Oemcomma; if (flag7) { bool flag8 = Keyboard.Modifiers.HasFlag(ModifierKeys.Control); if (flag8) { bool flag9 = Keyboard.Modifiers.HasFlag(ModifierKeys.Shift); if (flag9) { EventHandler kpxgbvyDjcpugw = this.CtrlShift; if (kpxgbvyDjcpugw != null) { kpxgbvyDjcpugw(this, null); } return(1); } EventHandler dzkchqaTbzapmd = this.Ctrl; if (dzkchqaTbzapmd != null) { dzkchqaTbzapmd(this, null); } return(1); } } return(0); } } return(KeyboardHook.CallNextHookEx(KeyboardHook.hKeyboardHook, nCode, wParam, lParam)); }