Как вы можете взять на себя ответственность за спрятанное устройство?
Что бы я хотел взять на себя спрятанное устройство, которое уже было подключено, потреблять его, а другие (X11 или терминал) не могут его использовать.
Если я могу помочь, я не хочу притворяться терминальным, а скорее монополизировать конкретное скрытое или символьное устройство. Идея состоит в том, что некоторые скрытые устройства могут быть распознаны как мыши/клавиатуры с помощью x/terminal, но вторая мышь или клавиатура могут быть использованы для чего-то другого, но для этого вам нужно убедиться, что они не отправляют ложный ввод в открытый терминал.
Есть ли у кого-нибудь представление о том, как это можно сделать?
Ответы
Ответ 1
Я сделал это - моим конкретным приложением был демон, который читал события с USB-устройства HID для чтения штрих-кодов (который представляет собой USB-клавиатуру USB).
Для этого я использовал интерфейс устройства событий, открыв устройство /dev/input/event*
, соответствующее устройству, которое я получил. Затем вы можете выпустить EVIOCGRAB
ioctl на устройстве, который захватывает его для исключительного использования, и считывать события (которые представляют нажатия клавиш, движения мыши и т.д.) С устройства по мере их появления.
(Когда устройство захвачено для исключительного использования, только ваше приложение увидит из него события).
Ответ 2
Я могу опоздать на вечеринку, но спасибо за этот драгоценный камень информации. Я много часов искал ответ на этот вопрос! Стив