Muchas gracias por sus respuestas, sin embargo mi duda aún persiste...
Ya escribí un par keylogers en asm y los tengo funcionando de manera adecuada. Lo que no he logrado hacer es diferenciar de cual teclado provienen las teclas presionadas, lo que necesito es por completo ignorar las que vienen de un teclado, es decir, que windows lo maneje de la manera que quiera, y las que vienen del otro teclado tomarlas para usarlas en mi aplicación. Eternal: a este tipo de controlador te refieres?... o que herramientas me recomiendas?
He buscado en internet si es posible tratar un puerto usb como un flujo de datos para poder manejarlo con CreateFile, Write y Read. Y aun cuando logro abrir el puerto usb al cual esta conectado el teclado, lo que no logro hacer, es leer la tecla presionada, pues antes que mi aplicación, windows lee esa tecla y limpia el buffer del teclado de modo que mi aplicación ya no lee nada. Esto último lo hice en vb6.
Por esto es que pensé que la solución se encuentra a bajo nivel y que con asm podría escribir algún programa que me funfionara...¿Ustedes que piensan?
Nuevamente muchas gracias por sus comentarios.
Saludos a todos!