Как libusb обнаруживает USB-устройство через hotplug под Windows? - PullRequest
0 голосов
/ 06 февраля 2019

Для исследования я заглянул в Libusb, чтобы увидеть, как делается hotluging.Для Linux я нашел соответствующий источник в libusb \ os \ linux_udev.c , где запускается поток, который выполняет poll () для udev.Однако, проведя часы в источниках Libusb, я не могу понять, как происходит горячее подключение в Windows.

В libusb \ os \ windows_winusb.c очевидно, что драйвер winusb используется дляполучить список устройств ( static int winusb_get_device_list (..) ), но это не обязательно вещь горячего подключения.Может ли кто-нибудь указать мне правильное направление?

Я использую usb4java (оболочку libusb Java) в своем проекте и могу обнаружить событие присоединения / отсоединения, но я хочу знать, как оно работает.

1 Ответ

0 голосов
/ 14 февраля 2019

На всякий случай, если это кому-то нужно.Я узнал, что, согласно форуму разработчиков libusb, это невозможно.В моем случае это было сделано с помощью оболочки java4usb, которая поддерживает горячее подключение благодаря API JavaX javax.usb.

...