VB.NET全局鼠标钩子有时会捕获不到鼠标?

我用同一个函数先安装了全局键盘钩子,然后再安装全局鼠标钩子。鼠标钩子的消息处理函数如下:
Private Function KeyMouseHookProc(nCode As Integer, wParam As Integer, IParam As Integer) As Integer
If nCode >= 0 Then

'其它代码

Else

KeyMouseHookProc = CallNextHookEx(mHook, nCode, wParam, IParam)

End If

KeyMouseHookProc = 0

End Function
键盘的消息处理函数跟这个差不多,用的是另一个过程。但是问题来了,我用键盘捕获事件没有出错过,而用鼠标时偶尔会出现失灵,虽然这几率很低,大概百分之五吧。一出现这种情况,无论怎么移动鼠标狂点鼠标都没有反应,而键盘只要按一下就有反应了。按说相似的消息处理函数不会差那么多啊,这和安装的先后顺序有关吗,还有我这个程序是随关机才停止运行的,不知道有没有正常卸载钩子,这有关系吗。哪位大神给我点破到底是哪里出错了呢?

第1个回答  2014-11-07
你的全局鼠标钩子估计有问题