首页新闻找找看学习计划

低级鼠标钩子(WH_MOUSE_LL)的子程处理时间问题

0
悬赏园豆:10 [已关闭问题] 关闭于 2020-01-13 14:58

我有个困惑已久的问题想请您帮我看下,这段程序是低级鼠标钩子(WH_MOUSE_LL)的子程程序片段。
问题描述:
如下代码所示:Thread.Sleep(250);return 1;可以阻止消息传递到windows。
而Thread.Sleep(500);return 1;不能阻止消息传递到windows。

    protected override int HookCallbackProcedure(int nCode, int wParam, IntPtr lParam)
    {
        省略代码...
        ...
        if (nCode > -1 && (MouseDown != null || MouseUp != null || MouseMove != null))
        {
            if (MouseDown != null)
                    {
                        
                        //Thread.Sleep(250);   //(250ms代表处理一段逻辑)
                        //return 1;
                        
                        Thread.Sleep(500);     //(500ms代表处理一段逻辑)
                        return 1;
                        
                        //return CallNextHookEx(_handleToHook, nCode, wParam, lParam);
                    }
            
        }

        return CallNextHookEx(_handleToHook, nCode, wParam, lParam);
    }
pecool的主页 pecool | 初学一级 | 园豆:39
提问于:2020-01-13 11:09
< >
分享
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册