public void Dispose() { gHookProc = null; if (gHookHandle == IntPtr.Zero) { return; } User.UnhookWindowsHookEx(gHookHandle); gHookHandle = IntPtr.Zero; }
private void InitHook() { gHookProc = new User.LowLevelKeyboardHookProc(_HookProc); //Kernel.GetModuleHandle(this.GetType().Module.Name) idem Marshal.GetHINSTANCE(this.GetType().Module) gHookHandle = User.SetWindowsHookEx(User.HookType.WH_KEYBOARD_LL, gHookProc, Marshal.GetHINSTANCE(this.GetType().Module), 0); if (gHookHandle == IntPtr.Zero) { int err = Marshal.GetLastWin32Error(); throw new HookException("error {0} calling SetWindowsHookEx for hook type WH_KEYBOARD_LL : {1}", err, new System.ComponentModel.Win32Exception(err).Message); } }
public void Dispose() { gHookProc = null; if (gHookHandle == IntPtr.Zero) return; User.UnhookWindowsHookEx(gHookHandle); gHookHandle = IntPtr.Zero; }
private void InitHook() { gHookProc = new User.LowLevelKeyboardHookProc(_HookProc); //Kernel.GetModuleHandle(this.GetType().Module.Name) idem Marshal.GetHINSTANCE(this.GetType().Module) gHookHandle = User.SetWindowsHookEx(User.HookType.WH_KEYBOARD_LL, gHookProc, Marshal.GetHINSTANCE(this.GetType().Module), 0); if (gHookHandle == IntPtr.Zero) { int err = Marshal.GetLastWin32Error(); throw new HookException("error {0} calling SetWindowsHookEx for hook type WH_KEYBOARD_LL : {1}", err, new System.ComponentModel.Win32Exception(err).Message); } }