У меня есть USB-устройство, которое выполняет перечисление с другим интерфейсом, VID, PID и серийным номером по команде, и я хотел бы отслеживать физическое устройство после этого изменения. Моя мысль заключалась в том, чтобы отслеживать его по его концентратору и местоположению порта.
Класс Win32_PnPSignedDriver имеет поле «Местоположение», которое казалось идеальным (например, Port_ # 0001.Hub_ # 0010
) , но он содержит только местоположение устройства при первой загрузке драйвера. Подключение оборудования к другому порту не приводит к обновлению этого поля.
Однако информация где-то доступна, потому что на вкладке «Подробности» есть поле «Информация о местоположении» при просмотре устройства через диспетчер устройств. Можно ли получить эту информацию с помощью запросов WMI или каким-либо другим способом? Есть ли лучший подход к решению этой проблемы?
РЕДАКТИРОВАТЬ: Я знаю, что это звучит как странный сценарий. Микроконтроллер в этих устройствах содержит ПЗУ, которое обозначается как устройство CDC (то есть последовательный порт) и позволяет программировать. Во время производства было бы полезно отслеживать устройство по мере его изменения между ПЗУ производителя (уникальный VID / PID / серийный номер) и моим пользовательским интерфейсом прошивки (другой VID / PID / серийный номер).