我有这个问题,一个USB设备来解决:为USB键盘的Windows HID设备驱动程序
- 连接到POS PC(视窗POSReady 2009)有一个USB键盘和USB达拉斯I-按钮读卡器
USB读卡器连接到主板USB总线,以及显示为USB复合装置:
USB复合设备 USB \ VID_134B & PID_0206 & REV_0100
兼容HID设备 HID \ VID_134B & PID_0206 & REV_0100 & MI_01
USB输入装置(第一实例)USB \ VID_134B & PID_0206 & REV_0100 & MI_00
USB输入装置(2ST实例)USB \ VID_134B & PID_0206 & REV_0100 & MI_01
HID键盘 HID \ VID_134B & PID_0206 & REV_0100 & MI_00
,当我读I-按钮与读取器,该按钮内的代码被添加到键盘缓冲区(因为它是与物理键盘键入)和活动的应用程序(至极具有键盘焦点)收到代码
- 我的申请必须由USB设备readed码interract,但是我必须专注于costantly一个TextBox接收代码
- 这并不总是可能的,特别是无人值守的MessageBoxes,这需要重点(和键盘输入),并可以创建故障
- 最好应该有一个阅读器串口或TCP/IP,但这是唯一的选择我们从读者键盘(我们不能改变阅读器)
所以,我的想法是陷阱来袭“按键”,避免系统键盘缓冲区追加中,并传递给通过WM_USER,WM_COPYDATA,插座或其他我的应用程序方法。
因此,目标是编写一个驱动程序,仅应用于特定的USB HID设备(I-Button阅读器,但不适用于真正的PC键盘),他们以某种方式阻止按键并将其发送给应用程序。
我检查了“键盘过滤器”微软的方式,但我可以阻止只有一些组合键,但这不是我的目标。
我想我应该创建一个个人“kbdhid.sys”和/或“kbdcalss.sys”驱动程序的自定义,并只适用于我的USB HID读取器。
难道有人指出我正确的方向吗?
非常感谢