В программе (с++) надо получить событие того, что подключено usb устройство, с дальнейшей проверкой его VID и PID.
Как лучше это сделать?
Пишут, что HAL хотят заменять на нечто другое, вроде DeviceKit, да и к тому-же что-то у меня не получается получить само событие.
Читал про udev, но в инете больше пишут про создание правил, а не как получить событие и т.п. В принципе можно сделать правило, чтоб запускалась другая прога, слала сообщение той которая его ждёт а потом завершалась, но как-то это коряво.
ЗЫ - у меня Lenny, если что.
Событие подключения USB устройства
Модератор: Модераторы разделов
-
DaemonTux
- Сообщения: 1480
- Статус: Юный падаван
- ОС: Gentoo
-
hardworm
- Сообщения: 36
- ОС: Debian Squeeze
Re: Событие подключения USB устройства
проще это все сделать через костыль pamusb-agent
-
rip86oz
- Сообщения: 2
- ОС: Debian Lenny
Re: Событие подключения USB устройства
Что хочу сделать: написан драйвер для Canon Lide 70 как so-шная библиотека. Будет прога её использующая (или группа взаимосвязанных прог) в обязанности которой будет входить наблюдение за наличием соединенисо сканером и будет посылать уведомление о том что сканер отрубили\подключили.
на другом форуме уже поговорили немного.
Рассматривались варианты: 1) HAL, 2) libudev, 3) udev + RUN в правилах, 4) inotify + UDEV правило на уникально имя устройства, 5) poll /dev/bus/usb/devices
Выбрал inotify + UDEV правило на уникально имя устройства.
На данный момент всё работает, но насколько знаю inotify не везде существует, но его хотя-б убирать не собираются, в отличие от 1-ого и 5-ого варианта. 2-ой не подходит, т.к. на Lenny проблемы с ним, или у меня проблемы
Если есть варианты - с удовольствием рассмотрю.
на другом форуме уже поговорили немного.
Рассматривались варианты: 1) HAL, 2) libudev, 3) udev + RUN в правилах, 4) inotify + UDEV правило на уникально имя устройства, 5) poll /dev/bus/usb/devices
Выбрал inotify + UDEV правило на уникально имя устройства.
На данный момент всё работает, но насколько знаю inotify не везде существует, но его хотя-б убирать не собираются, в отличие от 1-ого и 5-ого варианта. 2-ой не подходит, т.к. на Lenny проблемы с ним, или у меня проблемы
Если есть варианты - с удовольствием рассмотрю.