1.创建一个键盘设备
2.在IOCTL_INTERNAL_KEYBOARD_CONNECT中,获取KeyboardClassServiceCallback回调函数地址
3.我的电脑是THINKPAD T430,里面有一个触摸板的驱动:Syntp.sys,这个驱动下面的设备也会附加到
我创建的键盘设备上,这个时候,我得到的KeyboardClassServiceCallback地址就不对了,我再模拟
发送按键不管用。(设备的顺序是这样的:我的设备在最底下,中间是syntp.sys的设备
最上面是keyboardclass中的键盘设备)
我的猜想:syntp.sys下面是一个过滤设备,HOOK了键盘设备的KeyboardClassServiceCallback,然后
把syntp.sys中的地址和设备传给了我。同时syntp.sys里面没有对相应逻辑的处理。
问题:怎么能够得到正确的回调函数地址 或者 正常模拟发送按键信息
PS:在网上看到通过寻找keyboardclass下面的设备扩展,找到这个地址的,这种方法兼容性好吗?
------解决思路----------------------
PS:在网上看到通过寻找keyboardclass下面的设备扩展,找到这个地址的,这种方法兼容性好吗?
---------------------
可以试一下