LitDev.LDTextWindow.HookThread C# (CSharp) Method

HookThread() private static method

private static HookThread ( ) : void
return void
        private static void HookThread()
        {
            try
            {
                IntPtr _handle, _hookID;
                lock (_lock)
                {
                    if (bHooked) return;
                    bHooked = true;
                    using (Process process = Process.GetCurrentProcess())
                    using (ProcessModule module = process.MainModule)
                    {
                        _handle = User32.GetModuleHandle(module.ModuleName);
                        _hookID = User32.SetWindowsHookEx(User32.WH_KEYBOARD_LL, _hookDelegate, _handle, 0);
                    }
                }
                System.Windows.Forms.Application.Run();
                User32.UnhookWindowsHookEx(_hookID);
            }
            catch (Exception ex)
            {
                Utilities.OnError(Utilities.GetCurrentMethod(), ex);
            }
        }