Мне нужно получить список устройств ввода в операционной системе Linux. Что-то похожее на парсинг/proc/bus/input/devices, но на самом деле я не хочу изобретать велосипед. Я считаю, что должны быть некоторые системные функции для перечисления устройств и тому подобного. Это встроенный Linux, поэтому я ограничен в библиотеках, которые я могу использовать.Получить устройства ввода linux
ответ
Итак, чтобы найти обработчик событий мыши, вы ищете строку, которая начинается с «H:» и имеет «mouseN». Затем он будет иметь «eventM» в той же строке. Должно быть выполнимо около полудюжины строк кода для открытия/proc/bus/input/devices, прочитайте строку, проверьте, запускается ли она «H:», и если да, проанализируйте остальную часть ее для «мыши», и "события".
Я нашел 9 строк с записью 'mouseN' в разделе H: например, посмотрите на эти два' H: Handlers = mouse0 event3 H: Handlers = mouse1 event4' Он работает, когда я пишу события в/dev/input/event3, но не работает для/dev/input/event4. Итак, как я должен понять, какое устройство является правильным? – axe
Странно. У вас есть несколько устройств типа «указывая», прикрепленных к вашей системе? У меня есть только одна такая строка ... –
Вот еще один вывод из моей виртуальной машины, запущенной ubuntu. 'H: Хендлеры = KBD event0 H: Хендлеры = KBD Event1 H: Обработчики = SysRq KBD event2 H: Обработчики = mouse0 event3 js0 H: Обработчики = mouse1 event4 H: Обработчики = event5' – axe
устройства ввода мышь, клавиатура, сканер, чтобы узнать больше about all input devices
Я думаю, что op спрашивает, как получить его через строку кода или что-то еще, а не определение устройства ввода – koceeng
- 1. Получение ввода устройства (мышь, клавиатура ...) на LINUX
- 2. События ввода устройства Linux, как получить начальное состояние
- 3. драйвер сетевого устройства Linux
- 4. QTKit, устройства ввода ввода?
- 5. Обновление драйвера устройства Linux
- 6. получить токен устройства без ввода функции didRegisterForRemoteNotificationsWithDeviceToken
- 7. Нумерация интерфейса ввода ввода Linux
- 8. Разделение ввода номера на устройства
- 9. Linux, чтение ленточного устройства
- 10. Драйвер устройства Linux
- 11. USB-драйвер устройства Linux
- 12. Создание файла устройства: драйвер устройства Linux
- 13. Как написать драйвер устройства для Linux-устройства?
- 14. C# Обнаружение устройства ввода
- 15. Устройства виртуального ввода MacOS
- 16. Драйвер устройства записи в Linux
- 17. Audio имя устройства ввода усечен
- 18. Эмуляция физического USB-устройства Linux
- 19. USB-устройства Enum в Linux/C++
- 20. Захват ввода в Linux
- 21. библиотека драйверов устройства linux недоступна
- 22. Стратегия буферизации драйвера устройства Linux
- 23. Виртуальные сетевые устройства в Linux
- 24. Ошибка регистрации драйвера устройства Linux
- 25. Написание нового драйвера устройства Linux
- 26. Как дублировать файл устройства Linux?
- 27. Драйвер устройства беспроводной сети Linux
- 28. черепа драйвер устройства в Linux
- 29. Определение Linux события клавиатуры устройства
- 30. Устройство персонального устройства Linux «Подкаталог»
Что вы на самом деле хотите сделать? В общем, «разбор/proc/bus/input/devices» действительно то, что вы хотели бы сделать, чтобы получить список устройств ввода. Сам формат вообще довольно легко разобрать ... –
Я хочу переместить мышь. XWarpPointer не работает, потому что у меня нет -lX11 с arm-linux-gnueabi-gcc. Я пишу события непосредственно в/dev/input/event3, и он работает, но мне нужно точно знать, к какому входному файлу я должен писать события. Поэтому мне нужно найти устройство ввода мыши или переместить мышь любым другим способом. – axe
Вы можете подумать о настройке 'udev', чтобы упростить процесс. И разбор '/ proc /' файлов действительно является предпочтительным способом взаимодействия с ядром по многим темам. –