我正在开发一个需要计算用户击键次数的应用程序。它工作正常,但用户可以使用SendInput()WINAPI函数欺骗应用程序。是否有办法区分真实用户和通过SendInput发送的按键?
答案 0 :(得分:3)
使用类型为WH_KEYBOARD_LL
的SetWindowsHookEx
设置一个钩子。您的回调可以检查KBDLLHOOKSTRUCT::flags
字段。如果设置了LLKHF_INJECTED
标记,则它来自SentInput
或keybd_event
。否则,它来自本地键盘驱动程序。