コード例 #1
0
ファイル: MouseHook.cs プロジェクト: guanguanxj/PrintScreen
 public int Start()
 {
     if (hMouseHook == 0)
     {
         Process curProcess = Process.GetCurrentProcess();
         ProcessModule curModule = curProcess.MainModule;
         //Create an instance of HookProc.
         hProc = new Win32Api.HookProc(MouseHookProc);
         //hMouseHook = Win32Api.SetWindowsHookEx(WH_MOUSE_LL, hProc, Win32Api.GetModuleHandle(curModule.ModuleName), 0);// Win32Api.GetCurrentThreadId());//curProcess.Id//Process.GetCurrentProcess().Id
         hMouseHook = Win32Api.SetWindowsHookEx(WH_MOUSE_LL, hProc, Win32Api.GetModuleHandle("user32"), 0);//
         //SetWindowsHookEx fails.
         if (hMouseHook == 0)
         {
             Stop();
             Console.WriteLine("SetWindowsHookEx failed. ");
             throw new Exception("SetWindowsHookEx failed. ");
         }
         else
         {
             //Win32Api.UnhookWindowsHookEx(hMouseHook);
             hMouseHook = 0;
         }
     }
     return hMouseHook;
 }
コード例 #2
0
ファイル: Win32Api.cs プロジェクト: Jeff-Lewis/MyRepository
 public void SetHook()
 {
     KeyboardHookDetegate = new HookProc(KeyboardHookProc);
     Process cProcess = Process.GetCurrentProcess();
     ProcessModule cModule = cProcess.MainModule;
     var mh = Win32Api.GetModuleHanlde(cModule.ModuleName);
     hHook = Win32Api.SetWindowsHookEx(Win32Api.WH_KEYBOARD_LL, KeyboardHookDetegate, mh, 0);
 }
コード例 #3
0
ファイル: Hooks.cs プロジェクト: yuang1516/open-twebst
        public void Install()
        {
            if ((hHook != 0) || (getMsgHookProcedure != null))
            {
                throw new Exception("Hook already installed in Hooks.Install");
            }

            getMsgHookProcedure = new Win32Api.HookProc(GetMsgHookProc);

            hHook = Win32Api.SetWindowsHookEx(Win32Api.WH_GETMESSAGE, getMsgHookProcedure, (IntPtr)0, AppDomain.GetCurrentThreadId());
            if (hHook == 0)
            {
                throw new Exception("SetWindowsHookEx failed in Hooks.Install");
            }
        }
コード例 #4
0
ファイル: Hooks.cs プロジェクト: yuang1516/open-twebst
        public void UnInstall()
        {
            if (0 == hHook)
            {
                throw new Exception("hHook is zero in Hooks.UnInstall");
            }

            bool ret = Win32Api.UnhookWindowsHookEx(hHook);
            if (ret == false)
            {
                throw new Exception("UnhookWindowsHookEx failed in Hooks.Install");
            }

            hHook               = 0;
            getMsgHookProcedure = null;
        }
コード例 #5
0
ファイル: Hooks.cs プロジェクト: yuang1516/open-twebst
        public void UnInstall()
        {
            if (0 == hHook)
            {
                // Not installed.
                return;
            }

            bool ret = Win32Api.UnhookWindowsHookEx(hHook);
            if (ret == false)
            {
                throw new Exception("UnhookWindowsHookEx failed in Win32LLMouseHook.Install");
            }

            hHook = 0;
            mouseHookProcedure = null;
        }
コード例 #6
0
ファイル: Hooks.cs プロジェクト: yuang1516/open-twebst
        public void Install()
        {
            if ((hHook != 0) || (mouseHookProcedure != null))
            {
                throw new Exception("Hook already installed in Win32LLMouseHook.Install");
            }

            mouseHookProcedure = new Win32Api.HookProc(MouseHookProc);
            hHook = Win32Api.SetWindowsHookEx(Win32Api.WH_MOUSE_LL, mouseHookProcedure, (IntPtr)0, 0);
            if (hHook == 0)
            {
                throw new Exception("SetWindowsHookEx failed in Win32LLMouseHook.Install");
            }
        }
コード例 #7
0
 /// <summary>
 /// this method sets up the golbal mousehook to start listening to each mouseEvent.
 /// </summary>
 public void SetHook()
 {
     _hProc = MouseHookProc;
     _hHook = Win32Api.SetWindowsHookEx(WhMouseLl, _hProc, IntPtr.Zero, 0);
 }
コード例 #8
0
 public int SetHook()
 {
     hProc = new Win32Api.HookProc(MouseHookProc);
     hHook = Win32Api.SetWindowsHookEx(WH_MOUSE_LL, hProc, IntPtr.Zero, 0);
     return(hHook);
 }
コード例 #9
0
ファイル: MouseHook.cs プロジェクト: nylyy0325/myproject
 public int SetHook()
 {
     hProc = new Win32Api.HookProc(MouseHookProc);
     hHook = Win32Api.SetWindowsHookEx(WH_MOUSE_LL, hProc, IntPtr.Zero, 0);
     return hHook;
 }
コード例 #10
0
 /// <summary>
 /// Use your own HookProc ?
 /// </summary>
 public CoreWindowsHook(HookType hookType, Win32Api.HookProc callBackFunction)
 {
     InternalHookType = hookType;
     CallBackFunction = callBackFunction;
 }
コード例 #11
0
 /// <summary>
 /// Register to the HookInvoked event
 /// </summary>
 public CoreWindowsHook(HookType hookType)
 {
     InternalHookType = hookType;
     CallBackFunction = CoreHookProc;
 }
コード例 #12
0
 int SetHook()
 {
     Task.Run((Action)MouseEventHandle);
     hProc = new Win32Api.HookProc(HookHandle);
     return(hHook = Win32Api.SetWindowsHookEx(WH_MOUSE_LL, hProc, IntPtr.Zero, 0));
 }