#windows #usb #registry #devcon
#Windows #usb #реестр #devcon
Вопрос:
-
Что может привести к тому, что USB-устройство будет иметь двойные записи для одного и того же устройства в реестре?
-
Как получены числа, следующие за «9 amp;» (см. Ниже), т. Е. 3406C40F и 2D6B958A, на случай, если это подсказка о том, что вызывает эту проблему.
Я предполагаю, что, возможно, устройство сообщает о себе по-разному во время перечисления, возможно, с другой конфигурацией и / или дескриптором устройства.
Подробности теста, который вызывает эту проблему: я запускаю тест перечисления USB plug / displug, в котором каждый раз, когда я подключаю устройство, я проверяю различные вещи, чтобы убедиться, что перечисление правильное. Этот цикл повторяется 1000 раз. Это тест разработки.
После перечисления тест использует devcon.exe чтобы проверить некоторые вещи о коллекциях. По какой-то неизвестной причине после некоторого количества перечислений номера, связанные с коллекциями, меняются. Дальнейшее расследование показывает, что в реестре для одного и того же устройства есть две записи с одинаковыми номерами.
9 amp; 3406C40F — это номер в начале теста, связанный с каждой коллекцией
и через некоторое время после нескольких сотен перечислений оно меняется, в данном случае на
9 amp; 2D6B958A
начальное перечисление 2020-09-18 16:09:22 066 основная ИНФОРМАЦИЯ =========> devcon.exe «найти СПРЯТАННЫЙ»vid_047F* <=========
HID VID_047Famp; PID_015Damp; MI_03amp; COL05 9amp; 3406C40Famp; 0amp;0004: устройство, совместимое с HID HID VID_047Famp;PID_015Damp;MI_03amp; COL01 9 amp; 3406C40Famp; 0amp;0000: устройство, совместимое с HID HID VID_047Famp;PID_015Damp;MI_03amp; COL02 9amp; 3406C40Famp;0amp;0001: Устройство, совместимое с HID HID VID_047F amp; PID_015Damp; MI_03amp; COL03 9 amp; 3406C40F
amp; 0amp; 0002: устройство, совместимое с HID HID VID_047Famp; PID_015Damp; MI_03 amp; COL04 9 amp; 3406C40F: устройство, совместимое с HID
несколько сотен перечислений позже,
HID VID_047Famp; PID_015Damp; MI_03amp; COL01 9amp;2D6B958A amp; 0amp; 0000: устройство, совместимое с HID HID VID_047Famp;PID_015Damp;MI_03amp; COL02 9amp; 2D6B958Aamp; 0 amp; 0001: устройство, совместимое с HID HID VID_047Famp;PID_015Damp;MI_03amp; COL03 9amp; 2D6B958Aamp;0amp;0002: Устройство управления потребителем, совместимое с HID
HID VID_047Famp; PID_015Damp; MI_03amp; COL04 9 amp; 2D6B958A amp; 0amp; 0003: устройство, совместимое с HID HID VID_047Famp;PID_015Damp; MI_03 amp; COL05 9 amp; 2D6B958A amp; 0amp; 0004: устройство, совместимое с HID
Я запускал этот тест в течение миллионов циклов на других устройствах, но никогда раньше не сталкивался с этой проблемой. Это происходит на win7 и win10.
Любая помощь будет очень признательна! спасибо!
Комментарии:
1. Вы каждый раз подключаете его к одному и тому же USB-порту? Обычно эти шестнадцатеричные цифры зависят от USB-порта, но я не знаю, как именно они генерируются.
2. @DavidGrayson — USB-порт в любом случае остается неизменным.
Ответ №1:
Это ошибка устройства. Устройство периодически не сообщает свой серийный номер, поэтому ОС создает новую запись с другим LUID (локально уникальным идентификатором).