我编写了 ac# 应用程序,其中包含一个 WinAPI 低级键盘钩子,我用它来防止除字母数字键之外的所有键。
问题是 - 其他程序(那些在登录时启动的程序)也有键盘挂钩(用于启动计算器、浏览器等应用程序)。这些程序在我的钩子回调到达之前已经打开了这些应用程序,因此,我无法停止操作。
有什么方法可以确保我的钩子在任何其他人之前被调用?
编辑
消除混淆 - 我的应用程序是一个没有安装程序的单个可执行文件。它按需运行。
我需要能够接管其他钩子——或者只是强制我的钩子回调首先被调用——即使其他人已经调用了该SetWindowsHookEx
方法。