测试鼠标微动是否单击一下自动变双击
2022-04-25 18:01:39 35KB 微动测试
1
鼠标经常在单击时变成双击,所以打算写一个鼠标过滤驱动来修复硬件的BUG 鼠标过滤驱动能修复这个Bug的原理是: 鼠标在点击时,会触发一个硬件中断,然后发消息给过滤驱动,这时我在驱动中判断两次点击的时间间隔,如果小于100ms则认为是硬件故障,屏蔽掉该此操作 关于鼠标过滤,这里主要说一下IRP的取消。取消IRP还真是花费了我很多时间,原因是IoCancelIrp这个函数会直接回调完成例程,然后破坏了链表的结构,导致了蓝屏。(我在MyRead例程里面把IRP插入到一个链表里面,然后在MyReadComplete里面,从链表里面移除该IRP) 这样只好,在取消IRP时,复制一个新的链表,在新的链表里面对IRP进行取消,这样总算是OK了 好了,废话说完了,大家看代码吧:
1