![]() |
Deshabilitar HID-USB
Buneas
Resulta que en el programa que estoy haciendo tengo un teclado por USB y ahora un dispositivo RFID tambien por USB que emula el teclado, ahora necesito deshabilitar el lectro USB del RFID mientras no me haga falta para que cuando alguien se aproxime al lector RFID no interfiere con parte del programa en ejecucion, es decir lo que quiero es solicirtar al lector que actue cuando realmente sea necesario, para ello lo que se me ocurre es identificar el HID-USB mediante el ID Venderdor y deshabilitarlo hasta que realmente me haga falta y una vez leido o trascurrido un tiempo con un timer que lo vuelva a deshabilitar. Podeis orientarme de como podria deshabilitar dicho HID-USB mediante el ID del Vendedor ó productID?' Muchas gracias |
El objetivo de estos lectores es que funcionen desatendidos por lo cual lo que quieres hacer (a como yo los he usado) v en contra de para lo que se pensaron (kioscos, pasarelas, controles de acceso), basta con identificar el dispositivo de interfaz humana y deshabilitarlo/habilitarlo dependiendo de como lo requieras (no he realizado esta acción en delphi pero seguramente se puede).
Saludos. |
Sea como fuere, échale un vistazo a esta web: http://www.ajpdsoft.com/modules.php?...rticle&sid=463
Creo tiene todo lo que necesitas. Saludos y suerte! |
Gracias pero el ejemplo de apjsoft es para pendrive de memoria.
Lo que realmente quiero es poder habilitar y deshabilitar es el HID del Keyboar, en la actualidad me reconoce dos dispositivos uno HID que el el teclado y otro HID que es el Barcode Reader (Lector RFID), los dos los identifcio mediante el PID y el VID y de momento lo hago con mcHID.dll, pero no se como poder habilitar y deshabilitar o que no estre en uso uno de ellos, es dejarlo inactivo el Lector para cuando realmente me haga falta, de esta manera no interfiere con el programa, dado que si estan escribiendo y pasan sin querer el Tag del lector por encima les sale un chorro de numeros. Gracias |
Buenas sigo con el tema y quizas pueda solucionarlo de otra manera en vez de deshabilitar el lector o teclado. Expongo como estoy viendo la posible solucion pero aun asi necesito ayuda.
Tengo un teclado por USB-HID con un numero VID (Vendedor_ID) "VID:046D:" y un PID (Product_ID) "PID:C31C" Tengo un lector por USB-HID con un numero VID (Vendedor_ID) "VID:13BA" y un PID (Product_ID) "PID:0018" Dicha informacion la puedo sacar del Regedit o desde el administrador de dispositivos, los dos utilizan el mismo controlador. Luego dispongo de dos TEdit "Edit1" y "Edit2" la tecla 0 el la key=#48, pues bien la intencion es que si lee la tecla 0 del dispositivo HID de teclado vaya ela "Edit1" pero si por el contrario leo con el lector, que para ello le he dicho que la primera letra sea un 0, vaya al "Edit2". Sabria alguien decirme si sepuede identificar del dispositivo de donde viene el numero 0???? Muchas gracias PD si es necesario cambio el titulo |
Si deshabilitas el teclado ¿cómo lo habilitas después?
|
Cita:
No sé si Delphi podrá saber si vienen por uno o por otro dependiendo de si se puede leer el VID y o el PID de donde vengan. |
Has mirado el componente TJvHidDeviceController de la suite JVCL?
|
Puedes utilizar RegisterRawInputDevices.
Para poder "escuchar" el HID tendrás que registrarlo en la llamada RegisterRawInputDevices pasando un array con el total de dispositivos. |
Identificar multiteclado HID-USB
Gracias a nuestro amigo Noiro he podido conseguir distinguir el dispositivo Teclado del dispositivo RFID, podria valer para distinguir un teclado de un lector de codigo de barras etc.
Tan solo al codigo que pego Noiro se le han cambiado algunos parametros y con ello nos da el resultado del teclado en el Label1 y el lector en el Label2. Una vez conseguido esto definido cada una de las direcciones del dispositivo y podemos aislar el teclado del lector tanto en un edit como en un memo. Pego el codigo por si alguno esta buscando una solucion parecida a la mia. Gracias a todos PD si es necesario cambiar el titulo: "Deshabiliar HID-USB" por el de "Identificar multiteclado HID-USB"
|
me podrias ayudar con este descubrimiento tuyo
Hola petercat, vengo de Brasil, tengo un problema que solucionaste. ¿Podría darme un ejemplo más completo de cómo está reconociendo el lector hid rfid y cómo está trabajando con sus lecturas?
También tengo un lector HID que simula el teclado y quiero controlar cuándo empezar a leer o capturar su respuesta sin que afecte lo que está haciendo el operador. si me pueden ayudar se los agradecere |
La franja horaria es GMT +2. Ahora son las 15:52:02. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi