J'ai ce problème à résoudre avec un périphérique USB:de Windows pilote de périphérique HID USB Keyboard
- connecté au POS PC (Windows POSReady 2009) il y a un clavier USB et un câble USB Dallas lecteur I-Bouton
lecteur USB est connecté à MoBo bus USB, et apparaît en tant que dispositif USB composite:
composite Device USB USB \ VID_134B & & PID_0206 REV_0100
Compatible dispositif HID HID \ VID_134B & PID_0206 & REV_0100 & MI_01
dispositif d'entrée USB (premier exemple) USB \ VID_134B & PID_0206 & REV_0100 & MI_00
dispositif d'entrée USB (2st instance) USB \ VID_134B & PID_0206 & REV_0100 & MI_01
HID clavier HID \ VID_134B & PID_0206 & REV_0100 & MI_00
quand je lis I-Bouton avec le lecteur, le code à l'intérieur du bouton est ajouté au tampon du clavier (comme il a été tapé avec le clavier physique) et l'application active (Wich a le focus clavier) recevoir le code
- ma demande doit interract avec des codes readed par le périphérique USB, mais je dois avoir le focus costantly sur une zone de texte pour recevoir le code
- ce n'est pas toujours possible, spécialement avec les MessageBox sans surveillance, qui prennent le focus (et l'entrée au clavier) et peuvent créer des dysfonctionnements.
- mieux devrait être d'avoir un lecteur sur le port série, ou TCP/IP, mais c'est le seul choix nous avons (nous ne pouvons pas changer le lecteur)
donc, mon idée est de piéger entrant « keyPress » du clavier du lecteur, éviter ajouter dans le tampon du clavier du système, et les transmettre à ma demande par l'intermédiaire WM_USER, WM_COPYDATA, Socket ou autre méthode. Ainsi, le but serait d'écrire un pilote, à appliquer SEULEMENT à un périphérique HID USB spécifique (le lecteur I-Button, mais PAS au vrai clavier du PC) qui bloque les touches et envoie à l'application d'une manière ou d'une autre.
J'ai vérifié le "filtre clavier" Microsoft, mais je ne peux bloquer que certaines combinaisons de touches, mais ce n'est pas mon objectif. Je pense que je devrais créer une coutume de personnel "kbdhid.sys" personnel et/ou pilote "kbdcalss.sys" et appliquer SEULEMENT à mon lecteur USB HID.
Quelqu'un pourrait-il m'indiquer la bonne direction?
Merci beaucoup