Я хотел бы создать виртуальное устройство HID (эмулировать его с помощью драйвера).
Он должен быть виден клиентам, которые реализуют стандартное обнаружение HID:
- Call HidD_GetHidGuid () - получить HID
GUID класса устройства
- Вызовите SetupDiGetClassDevs () - Получить
обрабатывать набор устройств, которые
реализовать интерфейс HID
- Вызовите SetupDiEnumDeviceInterfaces () -
Для каждого устройства в возвращаемом наборе
устройств, получить интерфейс
информация для всех открытых HID
интерфейсы.
- Вызов
SetupDiGetDeviceInterfaceDetail () -
Для каждого интерфейса, полученного в
предыдущий звонок, получить подробную
информационный блок для этого интерфейса.
Эта подробная информация включает в себя
строка, которую можно передать
CreateFile () чтобы открыть дескриптор
устройство
- Вызовите SetupDiDestroyDeviceInfoList () -
Освободите набор информации об устройстве
что было получено в звонке
SetupDiGetClassDevs ().
Устройство также должно поддерживать чтение, поэтому CreateFile / ReadFile будет возвращать данные, предоставленные мной из драйвера.
Я действительно не знаю, с чего начать, так как у меня мало опыта. в ядре dev. (