我使用GetLastInputInfo检查鼠标和键盘的最后输入信息。 在我的PC上的系统工作正常,但当我在我的笔记本电脑上运行我的程序时,它无法正常工作。 我看到LASTINPUTINFO每10-15秒就会改变一次。
现在,我正在编写示例程序,用于检查来自鼠标和键盘的所有输入,并保存此设备的最后输入时间,但如果我闲置,这次不会改变。
如何检查谁生成活动(设备/程序)并更改结构LASTINPUTINFO?
答案 0 :(得分:4)
您可以使用Raw Input查看活动是否来自实际的鼠标/键盘本身。如果是,您可能有一个有故障的设备驱动程序,或者运行某种内部计时器的驱动程序,以生成稳定的输入事件流。
如果GetLastInputInfo()
更新未报告Raw活动,则正在运行的应用最有可能使用输入注入API,如mouse_event()
,keybd_event()
或SendInput()
。你必须直接挂钩才能找出哪个应用程序正在调用它们。