コード例 #1
0
 public static extern IntPtr CallNextHookEx(HandleRef hook, int code, IntPtr wParam, [In] ref MSLLHOOKSTRUCT lParam);
コード例 #2
0
        private IntPtr OnMouseEvent(int code, IntPtr wParam, ref MSLLHOOKSTRUCT lParam)
        {
            if ((code >= 0) && (wParam == new IntPtr(NativeMethods.WM_MOUSEMOVE)) && this._IsPrintScreenKeyDown)
            {
                this._IsSearchMode = true;

                IntPtr Window = NativeMethods.WindowFromPoint(lParam.pt);

                if (Window != IntPtr.Zero)
                {
                    IntPtr SelectedWindow = this._SelectedWindow;
                    this._SelectedWindow = Window;

                    if (Window != SelectedWindow)
                    {
                        RedrawWindow(SelectedWindow);
                    }

                    DrawRectangle(Window);
                }
            }

            return NativeMethods.CallNextHookEx(new HandleRef(this._MouseHook, this._MouseHook.Handle), code, wParam, ref lParam);
        }