Ejemplo n.º 1
0
 public void Install()
 {
     if (_hookId != IntPtr.Zero)
     {
         return;
     }
     _keyboardHookDelegate = HookFunc;
     _hookId = SetHook(_keyboardHookDelegate);
 }
Ejemplo n.º 2
0
 public void Uninstall()
 {
     if (_hookId == IntPtr.Zero)
     {
         return;
     }
     WindowsHookExInterop.UnhookWindowsHookEx(_hookId);
     _keyboardHookDelegate = null;
     _hookId = IntPtr.Zero;
 }
Ejemplo n.º 3
0
 private static IntPtr SetHook(WindowsHookExInterop.KeyboardHook proc)
 {
     using (var module = Process.GetCurrentProcess().MainModule)
     {
         return(WindowsHookExInterop.SetWindowsHookEx(
                    13,
                    proc,
                    GetModuleHandleInterop.GetModuleHandle(module.ModuleName),
                    0));
     }
 }
Ejemplo n.º 4
0
 private static IntPtr SetHook(WindowsHookExInterop.KeyboardHook windowsHookDelegate)
 {
     using (var module = Process.GetCurrentProcess().MainModule)
     {
         return(WindowsHookExInterop.SetWindowsHookEx(
                    WH_KEYBOARD_LL,
                    windowsHookDelegate,
                    GetModuleHandleInterop.GetModuleHandle(module.ModuleName),
                    0));
     }
 }
Ejemplo n.º 5
0
 public void Install()
 {
     _hookHandler = HookFunc;
     _hookId      = SetHook(_hookHandler);
 }