XP SP3下全局鼠标钩子自动失效的疑问
夜静听雨 2013-07-13 02:00:30 我用VS2010写一个win32的钩子.dll和一个win32的应用程序,当应用程序显示加载动态库的时候一切顺利,鼠标钩子也成功安装,可以屏蔽掉所有的鼠标消息,但是问题出来了:我打算鼠标钩子安装后,主程序暂停一定的时间,然后再调用.dll库的导出函数卸载钩子,但是在我主程序Sleep的这一段时间内,鼠标钩子已经无效了。说明:钩子有效的时间仅仅是几秒钟,时间过了,鼠标消息就不能被屏蔽了,但是主程序Sleep后调用UnhookWindowsHookEx()返回值依然为真。请问这是怎么回事,难道系统会自动解除这个钩子吗?如果是,那为什么我调用UnhookWindowsHookEx()的时候依然能正确返回TRUE呢?如果不是,我的钩子为什么就自动失效了呢?