Применение: UsbTreeView [/ R: имя файла]
/ R: имя файла записать (без вывода сообщений) отчет в имя файла
О неизвестных дескрипторах Декрипторы нельзя декодировать по двум причинам.
отображается как «Неизвестно»:
- декодирование не реализовано
- InterfaceClass устройства - 0xFF (зависит от производителя), поэтому зависит от класса
дескрипторы не могут быть декодированы, поскольку их класс неизвестен
Итак, если у вас есть неизвестный дескриптор, а класс интерфейса не 0xFF
тогда, пожалуйста, дайте мне знать, может быть, я найду подходящую спецификацию
и может добавить расшифровку для него.
По неизвестной причине дескрипторы HID часто не могут быть прочитаны, Windows
возвращает ERROR_GEN_FAILURE или ERROR_INVALID_PARAMETER. Насколько я знаю
видно, что это зависит только от устройства, но другой пользователь сообщил, что
дескриптор hid некоторых устройств может быть прочитан в NT6, но не в NT5.
О «Безопасном удалении» и «перезагрузке» При безопасном удалении UsbTreeView сначала вызывает вызов управления конфигурацией
CM_Query_And_Remove_SubTree. В случае успеха на устройстве появляется код проблемы.
21, который является CM_PROB_WILL_BE_REMOVED. Устройство с кодом 21 можно повторно активировать
путем вызова установщика класса DIF_PROPERTYCHANGE. Это что
UsbTreeView делает это, если вы выбираете «Перезагрузить устройство».
Но CM_Query_And_Remove_SubTree требует привилегий администратора, иначе он не сработает.
с CR_ACCESS_DENIED. В этом случае вызывается CM_Request_Device_Eject
который работает без прав администратора, но приводит к коду проблемы 47, который
это CM_PROB_HELD_FOR_EJECT. Такое устройство нельзя повторно активировать самостоятельно.
Повторная активация возможна путем перезапуска порта или всего концентратора, который он
прикреплен к. Но последний, конечно, перезагружает все устройства, подключенные к
концентратор.
Во всех случаях UsbTreeView просто выполняет системный вызов и показывает
окно сообщения, если Windows возвращает ошибку. Но Windows не всегда
вернуть ошибку, даже если она была, поэтому иногда вообще ничего не происходит.
О "Restart Port" Это вызывает IOCTL_USB_HUB_CYCLE_PORT, который имитирует отключение и
переподключите подключенное устройство.
Он доступен под XP, но обычно только для концентраторов, работающих с
Драйвер Microsoft по умолчанию. Сторонние драйверы обычно возвращаются
ERROR_UNKNOWN_FUNCTION.
В Vista и Windows 7 он больше не поддерживается стандартом Windows.
драйверы, он всегда терпит неудачу с ERROR_NOT_SUPPORTED.
Начиная с Windows 8 он снова работает, но в отличие от администратора XP преобладает
необходимы. Без прав администратора он не работает, как в Vista и Win7
с ERROR_NOT_SUPPORTED.
О Debug-Port В образце Microsoft USBView есть список хост-контроллеров USB.
и их порт отладки. Я поместил таблицу в UsbTreeView, она показывает
затем в свойствах хост-контроллера строка вроде такой:
DebugPort (из списка): 1
Windows 8 имеет расширенную информацию USB, она сообщает для каждого порта, если он
поддерживает отладку, и это действительно работает (видно на чипсете i945G с ICH7).
USB-мыши Если USB-мышь перемещается, когда инструмент запрашивает ее свойства USB
обычно является ошибкой, потому что у мыши есть более важные вещи,
делать. Затем UsbTreeView в течение нескольких секунд пытается получить эту информацию.
Вы можете увидеть желтый вопросительный знак в узле дерева мыши для
момент, который исчезает, как только вы перестаете двигать мышью.
Этот механизм повторной попытки применяется для всех типов устройств, но обычно это
мышь, где это помогает.
Информация, отображаемая в виде дерева UsbTreeView оптимизирован по скорости, поэтому дескрипторы USB не
собираются до того, как устройство будет выбрано в древовидной структуре. Итак, информация
которые поступают с дескрипторов USB, не могут быть показаны в древовидной структуре,
все идет из диспетчера устройств Windows.
По этой же причине создание полного отчета занимает некоторое время.