请问,关于钩子响应慢的一个问题
以下是我挂钩的代码:WH_KEYBOARD_LL = 13&
If keyHook = 0 Or Len(keyHook) = 0 Then keyHook = SetWindowsHookEx(WH_KEYBOARD_LL, AddressOf HookKeyBoard, App.hInstance, 0)
以下是 hook 调用的函数如下:
Public Function (ByVal nCode As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
……
end function
问题:在笔记本(win8) 和 台式机(Vista) 中使用没有问题,一切正常,在另一笔记本(Win7)和另一台式机(Win7)中使用时,出现调用函数响应很慢的情况
具体情况:
1.挂钩后,按下键盘时,调用函数 HookKeyBoard ,但进入HookKeyBoard 函数后,windows 会停止响应大约 20 秒,然后正常运行后面的代码。
2.如果设置断点在 Public Function 这一句时,程序会中断在这一句,但此时 Windows系统停止响应,这时如果移动或点击鼠标,还会发出“嘟嘟嘟…”的响声,约 20 秒后,windows 恢复响应,可以继续调试运行
3.如果在 Public Function 下一句 加入 MsgBox
Public Function (ByVal nCode As Long, ByVal wParam As Long, ByVal lParam As Long) As Long
msgbox 1
……
会在出现 对话框后 Windows 停止响应,约 20 秒后,windows 恢复响应,此时会再弹出一个 相同的 对话框,点击两个对话框的确定按钮后,后面正常运行
我是个菜鸟,这个问题让我非常头痛,还请高手们指点迷津,如何解决问题?非常感谢!!