有没有办法来检测哪些程序或模块正在听一个键盘钩子? 通过Sysinternals也许?
这篇博文有说明:http: //zairon.wordpress.com/2006/12/06/any-application-defined-hook-procedure-on-my-machine/
这在很大程度上取决于您获得按键的抽象程度。
为了最大限度的检测,您可以直接使用硬件,或者尽可能低(一些挂钩在HW驱动程序级别工作)。
为了安全起见,您也可以使用虚拟键盘 – 挂钩必须专门针对您的应用程序来模拟按键。
不。 你可能必须钩入SetWindowsHookEx()本身才能检测到。
我不认为你可以,没有GetWindowsHook函数会返回钩子。 另外,我觉得主键盘处理程序是通过SetWindowsHookEx()挂钩的,所以即使没有挂钩,也至少有一个Windows本身。