У нас есть компьютер, который используется для тестирования некоторых устройств. Время от времени тестировщикам нужно заходить и удалять назначенные COM-порты, чтобы они освободились и начали с 1. В последнее время он назначает им один и тот же COM-порт нескольким устройствам (около 8 подключено одновременно), а также им нужно изменить тестовый код, чтобы он соответствовал номеру, назначенному ОС.
Сообщалось о проблеме с дублированием номеров, но я также считаю проблемой «необходимость проверять COM-порты и обновлять код» несколько раз в день.
ВДиспетчер устройств, если я включу отображение скрытых устройств, я увижу сотни из них!
По размеру полосы прокрутки можно сказать, что список довольно большой. Я могу щелкнуть по каждому и удалить, но это безумие — удалять по одному, поэтому я и прошу альтернативу командной строки, чтобы написать скрипт, который они смогут дважды щелкнуть, когда им нужно будет сбросить порты.
Конечно, если есть какое-то программное обеспечение, которое позволит это сделать, то это тоже хорошо.
решение1
Удалить активные USB-порты:
devcon /r remove @usb\*
Удалить активные порты LPT и COM:
devcon /r remove =ports
Опрос всех портов COM и LPT:
devcon FindAll =Ports
Запрос активных USB-портов:
devcon status @usb\*
Опрос всех USB-портов — разные результаты:
devcon findall @usb\*
devcon findall =USB
Перечислить все устройства:
devcon hwids * > hwids.txt
Часть в WDK,Комплект драйверов Windows версии 7.1.0.
Старая версия, 2003-01-29, не работает на Windows 7 (не del-устройстве). devcon старая версия 2003-01-29
Альтернатива 1 - PnPUtil
Альтернатива 2 — раздел реестра, поиск USB-устройства в подразделе
Не все!
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USBSTOR
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\HID
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\ACPI
Пример:
reg delete "HKLM\SYSTEM\CurrentControlSet\Enum\USBSTOR\Disk&Ven_Seagate&Prod_USB_2.0_Cable&Rev_0148" /f
Если порты перечислены devcon FindAll =Ports
- удалите этот ключ реестра:|
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\ACPI
Если порты перечислены devcon status @usb\*
- удалите этот ключ реестра:|
HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum\USB
Пример:
Спасибо geermc4! Я протестировал devcon. В версии Windows Driver Kit он работает правильно с Windows 7.
Профиль оборудования можно настроить только для Windows XP. Мы не сможем настроить на Windows 7. Это сделано по замыслу... резервное копирование HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum
...
решение2
Мне также нужно протестировать сотни единиц. Однако я пытался использовать командную строку "devcon /r remove @usb*" и devcon /r remove =ports", что не сработало. Я также скачал WDK (не знаю, как им пользоваться). Я был в замешательстве после прочтения разговора. @geermc4 и @STTR, не могли бы вы еще раз объяснить, как вы это сделали?