如何跟踪键盘input并绕过SendInput

我正在开发一个需要计算用户击键的应用程序。 它工作正常,但用户可以通过SendInput()WINAPI函数来欺骗应用程序。 有没有什么办法来区分真正的用户和通过SendInput发送的按键?

Solutions Collecting From Web of "如何跟踪键盘input并绕过SendInput"

使用WH_KEYBOARD_LL类型设置一个带有SetWindowsHookExWH_KEYBOARD_LL 。 您的回调可以检查KBDLLHOOKSTRUCT::flags字段。 如果它设置了LLKHF_INJECTED标志,则它来自SentInputkeybd_event 。 否则,它来自本地键盘驱动程序。