win32api:暂时阻止鼠标点击?

时间:2011-02-22 16:36:08

标签: python windows winapi pywin32

有没有办法使用win API禁用常规Windows鼠标点击?我可以通过执行ClipCursor来禁用除特定点之外的任何位置的点击次数,但点击仍会注册。

或者我也想有条件地禁用鼠标点击...例如,我想让关闭我无法控制的应用程序的窗口是不可能的,所以我希望点击发送到该窗口的'X'不经历。

1 个答案:

答案 0 :(得分:1)

你可以,而且非常危险。这是c ++中的方法

LRESULT __stdcall LowLevelMouseProc(int nCode, WPARAM wParam, LPARAM lParam)
{
    if ((nCode < 0) || false)
    {
        result = CallNextHookEx(myLowLevelMouseHookHandle, nCode, wParam, lParam);
    }

    return result;
}

更改上例中的false以重新启用键盘。

BTW这种技术在键盘输入方面的工作方式也类似,即使Ctrl + Alt + Del也无法正常工作。

如果您想让鼠标移动,但只阻止点击,请添加一些if ((wParam == WM_MOUSEMOVE) || (wParam == WM_NCMOUSEMOVE))代码。

http://msdn.microsoft.com/en-us/library/ms644986(VS.85).aspx

的更多信息