32

Как очистить эти используемые COM-порты?

Кажется, что номера COM-портов всегда чем-то заняты, и хотя сейчас у меня есть только 4 последовательных порта (3 через Bluetooth и один USB-порт для RS-232), у меня установлено множество COM-портов, которые используются. Я бы хотел немного очистить этот список.

Также мне кажется, что время от времени один из занятых COM-портов освобождается, а затем одно из устройств, которые я использую, будет использовать этот номер, создавая путаницу, так как мне придется идти и искать его номер в диспетчере устройств. ,

ОБНОВИТЬ:

Ну, я просто очистил бесчисленное количество USB-устройств, которые когда-то были подключены к компьютеру с помощью USBDeview, и проблема все еще остается.

9 ответов9

30

Запустите диспетчер устройств из командной строки с повышенными правами:

> set DEVMGR_SHOW_NONPRESENT_DEVICES=1
> devmgmt.msc

Включите "Показать скрытые устройства" в меню и удалите неактивные COM-порты.

27

Я нашел полезный ответ на Как очистить или сбросить COM-порт?

  1. Нажмите Пуск → Выполнить → введите regedit и нажмите кнопку ОК
  2. Перейдите к HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\COM Name Arbiter
  3. Теперь на правой панели вы можете увидеть клавишу ComDB . Щелкните правой кнопкой мыши и выберите «Изменить».
  4. В разделе Значение выберите все и удалите сброс до нуля (0).
    Его 32 байта с 8 битами в каждом байте в шестнадцатеричном представлении. Бит значения 1 делает номер порта (1 ... 256) зарезервированным. Первые 8 портов имеют два крайних левых шестнадцатеричных значения, биты возрастают от нижнего к верхнему справа налево, следующие 8 портов находятся во вторых двух и т. Д .: шестнадцатеричный F3 24 будет двоичным 1111 0011 0010 0100 , что означает, что следующие порты используются: 1, 2, 5, 6, 7, 8 (1111 0011) и 11, 14 (0010 0100) .
  5. Закройте редактор реестра и перезагрузите компьютер. Если вы установите значение 0 все COM-порты будут свободны.

Возможно, вам придется переустановить любой USB-последовательный преобразователь.

8

Спасибо за все советы выше. Я написал программное обеспечение для автоматической очистки реестра, но, хотя оно и отрегулировало разделы "Оборудование", "Программное обеспечение" и "Арбитр", оно НЕ удаляло фантомные записи COM-порта. Даже перезагрузка с удаленным устройством "USB to 2Serial Port" не очищала систему должным образом.

Однако инструкции в этом PDF- файле работали правильно:

Для Win7 я немного скорректировал инструкции для этого PDF, чтобы:

  1. нажмите Пуск / (щелкните правой кнопкой мыши :) Компьютер / Свойства / Дополнительные параметры системы (не Диспетчер устройств)
  2. Нажмите Переменные среды
  3. Кликните в Системные переменные (нижний раздел) нажмите New
  4. Введите имя переменной: DEVMGR_SHOW_NONPRESENT_DEVICES
    Введите значение переменной: 1
  5. Нажмите OK (выход из среды)
  6. Нажмите OK (выход из Системных свойств)

  7. Нажмите Пуск. В командной строке введите Manage Это показывает окно управления компьютером ...

  8. Нажмите Диспетчер устройств
  9. Нажмите View и выберите Show Hidden Devices
  10. Нажмите Порты (COM и LPT)
    Теперь отображаются все порты: реальный (черный текст) и фантомный (серый текст).
  11. Один за другим, щелкните правой кнопкой мыши на фантомных портах и выберите Удалить

Теперь это должно было очистить вашу систему от ненужных фантомных USB-портов.

Примечание: после очистки всех моих фантомных портов, оставляя только "COM1", я вижу, что мой реестр показывает:

Hardware:   COM1
Software:   COM1, COM2, COM3, COM4, COM5
Arbiter:    COM1, COM2, COM3

А при щелчке правой кнопкой мыши на Компьютер / Свойства / Диспетчер устройств / Порты отображается только COM1. Щелкните правой кнопкой мыши на COM1 / Свойства / Настройки порта / Дополнительно показывает, что COM1 с COM2 "используется" и COM3 "используется". Все остальные настройки до 7, которые раньше использовались, теперь освобождены. Так что, похоже, только параметр "Арбитр" говорит системе Win7, что действительно "используется". Система управления компьютером очистила арбитр, но не очистила раздел "Программное обеспечение" ...

... многие загадки Microsoft ...

6

Решение проблем с драйверами USB

Метод с использованием повышенной командной строки

т.е. введите cmd в строке поиска, затем щелкните правой кнопкой мыши cmd.exe, выбрав Запуск от имени администратора

• 1-й этап Как обсуждено из типа командной строки; set devmgr_show_non_present_devices = 1 devmgmt.msc

    Under Ports (Com & LPT) delete all instances of  prolific USB to Serial Comm Port

• 2-й этап снова из командной строки с повышенными правами - удаление пакетов драйверов из хранилища драйверов. Хранилище драйверов - это защищенная область компьютера, содержащая пакеты драйверов устройств, которые были одобрены для установки на компьютер.

    You need to Identify OEM#.inf  where # is a number so type 
        pnputil.exe -e      (then enter)

    Read the entries in the output to find the description of your package(s) and its file name(s)


    Its highly likely you will have multiple entries from previous attempts.

Обратите внимание на все экземпляры oem ###. Inf плодовитого драйвера, где # (хэш) - это номер.

    To remove entries type:
        pnputil.exe -d  oem###.inf

(используйте пробел между exe & - и d & Oem, затем нажмите enter) Не забудьте заменить # на номер inf-файла, который вы хотите удалить.

Если компьютер сообщает, что пакет драйверов используется установленным в данный момент устройством, необходимо сначала удалить устройство или использовать команду -f в команде pnputil, чтобы принудительно удалить пакет.

Также вы можете загрузить пакет драйверов в качестве программы, которая может потребовать удаления с помощью панели управления / программ / удалить программу.

Если вы сделаете все это перед загрузкой правильного пакета драйверов и попытаетесь оставить устройство Com вставленным в тот же порт, а не перемещать его вокруг своих портов, у вас будет меньше проблем с драйвером Prolific.

0

Я обнаружил, что этот инструмент отлично работает для этой проблемы.

Устройство для удаления устройства https://www.majorgeeks.com/files/details/device_remover_543c.html

Просто загрузите его, нажмите "Режим отображения", «Показать только скрытые / отключенные устройства», отметьте "Порты" (который выбирает все неиспользуемые ком-порты), затем нажмите "Удалить все отмеченные" и подтвердите удаление при появлении предупреждения. появляется.

Ура!

~ Эндрю

EmpoweringSolutions.net

0

У меня есть простое решение, которое сработало для меня ... мой счет был до 45 используемых портов!

1) Откройте диспетчер устройств

2) В меню «Вид» выберите «Показать скрытые устройства».

3) Разверните категорию «Порты (COM и LPT)» из списка.

4) Щелкните правой кнопкой мыши на всех устройствах и удалите их (не нужно ставить галочку для удаления драйвера)

5) В меню «Действие» выберите «Сканировать новые устройства».

6) Альт! Все фактические устройства будут переназначены из COM1

0

Это не сработало для меня. Но официальная страница справки Microsoft сработала для меня.

С https://support.microsoft.com/en-us/kb/222018

  • В папке «Принтеры» выберите «Свойства сервера» в меню «Файл».
  • Перейдите на вкладку «Порты», выберите порт, который хотите удалить, нажмите «Удалить порт» и нажмите кнопку «ОК».
-1

(Для тех кто пришел из гугла)

Если предыдущий ответ не работает и установлен Windows Mobile 6 SDK. Это может быть проблема с XPVCOM.SYS (этот драйвер зарезервировал 14 COM-портов) для удаления в консоли

CD \ Программные файлы \ Windows Mobile 6 SDK \ Инструменты \ Эмулятор сотовой связи \

InstallXPVCom.exe Удалить

затем перезагрузите компьютер.

-1

Для тех, кто не хочет использовать линейный интерфейс CMD, я использую это в Windows 7.

  1. Открытая панель управления
  2. Выберите "СИСТЕМА" из меню
  3. Выберите "РАСШИРЕННЫЕ СИСТЕМНЫЕ НАСТРОЙКИ" слева
  4. Выберите "ПЕРЕМЕННЫЕ ОКРУЖАЮЩЕЙ СРЕДЫ" в правом нижнем углу окна
  5. Найдите "DEVMGR_SHOW_NONPRESENT_DEVICES" в списке системных переменных. Если его там нет, создайте его и присвойте ему значение переменной
    1. Вернитесь с OK, OK, OK. Теперь вы вернулись на экран панели управления.
  6. Выберите "Диспетчер устройств" и перейдите в "Просмотр"
  7. Выберите "Показать скрытые устройства", и все скрытые устройства, включая порты связи, будут показаны серым или Ghosted.
  8. Выберите те, которые вы хотите удалить, щелкните правой кнопкой мыши и выберите "Удалить"

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .