Pregunta

Lo que quisiera tomar posesión de un dispositivo HID que ya pueden haber sido enchufada, consume su salida, al tiempo que evita los demás (X11) o terminal de consumirlo.

Si puedo evitarlo, no quiero fingir ser un terminal, sino más bien de monopolizar un dispositivo HID o personaje en particular. La idea es que algunos dispositivos HID pueden ser reconocidos como ratones / teclados por x / terminal, pero un segundo ratón o el teclado podrían ser utilizados para otra cosa, pero para ello necesita para asegurarse de que no están enviando de entrada en una espuria terminal abierto.

¿Alguien tiene alguna idea de cómo se puede hacer esto?

¿Fue útil?

Solución

He hecho esto -. Mi aplicación específica era un demonio que leen los eventos de un lector de código de barras USB HID (que se presenta como un dispositivo de teclado USB HID)

Para ello he utilizado la interfaz de dispositivo evento, abriendo el dispositivo de /dev/input/event* correspondiente al dispositivo que fue después. A continuación, puede emitir el ioctl EVIOCGRAB en el dispositivo, que lo agarra para uso exclusivo, y leer eventos (que representan las pulsaciones de teclas, movimientos del ratón, etc) desde el dispositivo a medida que estén disponibles.

(Cuando el dispositivo se agarró para uso exclusivo, solamente la aplicación va a ver los partidos de él).

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top