Удалил com порт что делать
Перейти к содержимому

Удалил com порт что делать

  • автор:

Параметры com-порта сбрасываются до значения по умолчанию после внесения изменений в диспетчер устройств

В этой статье описывается проблема, из-за которой при перезапуске компьютера параметры порта связи (COM-порт) снова менялись до значения по умолчанию.

Применимо к: Windows 2000
Исходный номер базы знаний: 293762

Симптомы

При перезапуске компьютера параметры порта связи (COM-порт) будут восстановлены до значения по умолчанию. Эта проблема возникает, даже если вы изменили параметры в диспетчер устройств. Например, при запуске командной строки в Windows 2000 можно заметить, что параметры по умолчанию для com 1:

Baud rate=1200; Parity=None; Data Bits=7; Stop Bits=1

У вас может быть программа, которая требует различных параметров, например:

Baud rate=9600; Parity=None; Data Bits=8; Stop Bits=1

Вы можете вручную настроить com 1 для работы в нужных параметрах с помощью этой команды:

Mode Com1: 9600,n,8,1

Однако при перезапуске системы вы обнаружите, что параметр возвращается к значению по умолчанию:

Baud rate=1200; Parity=None; Data Bits=7; Stop Bits=1

Причина

В Microsoft Windows 2000 параметры com-портов для командных функций поддерживаются только для активного сеанса Windows. Пользовательские параметры удаляются при завершении работы.

Решение

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

Пример ярлыка содержит следующую командную строку:

C:\winnt\system32\mode.com com1: 9600,n,8,1

Обратная связь

Были ли сведения на этой странице полезными?

Удалил COM1, LTP1 порты — как восстановить

Author24 — интернет-сервис помощи студентам

Здравствуйте!
Осваивал програмку QPTS (для шитья мобил) и ради спортивного интереса удалил COM1, LTP1 порты,
Теперь у меня восклицательные знаки в устройствах раздражают спасу нет, перепробовал много способов, (Драйвер для этого устройства успешно загружен, но само устройство не обнаружено. (Код 41) текущее состояние).

94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
Ответы с готовыми решениями:

Удалил рута. Как восстановить?
Удалил рута, теперь не могу зайти в phpMyAdmin. Как его восстановить и поставить на него пароль.

Удалил с загрузчика windows 10, как восстановить?
всем привет. сегодня появилась необходимость запустить одну программу, которая патчит ядро, для.

Удалил диск,как восстановить инфу
Ситуация такая ,решил переустановить винду,загрузился с диска,никуда не вставала удалил диск.

Как восстановить фото, которые удалил?
Прошу помощи, не разу не имел с этим дел, кто что посоветует. Чисто случайно удалили все фото и.

Эксперт С++

7175 / 3234 / 81
Регистрация: 17.06.2009
Сообщений: 14,164

Раздел не тот — домены тут не при чем !

Windows какой ?
А просто в свойства COM-порта зайти и сказать поискать дрова для него — не помогает ?

Регистрация: 03.10.2009
Сообщений: 21

Прошу прощения, что не туда тему запихнул (пока искал выход запарился. ни чего, описанное Вами выше и многое другое не помогло, пришлось инсталить систему заново.

87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
Помогаю со студенческими работами здесь

Случайно удалил страницу в битрикс — как восстановить
Добрый день. Удалил страницу каталога. Не пойму как восстановить. В журнале событий следующее.

По ошибке удалил файл, как его восстановить?
По oшибке удалил pdf-файл который находился на роботчому столе какой программой его лучше.

удалил верхнюю панель гном-десктопа. как ее восстановить
Случайно удалил верхнюю панель гном-десктопа. как ее восстановить.

Удалил все записи(случайно), можно ли как нибудь их восстановить?
Была база, я хотел передать ее в форум, но я забыл сделать резервную копию. Можно ли восстановить.

Удалил два раздела с принадлежащих ОС windows 10, как восстановить загрузчик?
Подскажите, при загрузки с флешки Linux нечаянно стер разделы которые виндовс резервирует под.

Удалил пользователя-как восстановить? Пож-ста,Очень срочно!
Помогите,пож-ста,срочная проблема!Эксперементировал с правами -удалил пользователя с компьютера,где.

Или воспользуйтесь поиском по форуму:

Очистка занятых COM портов в Windows

date

02.02.2022

user

itpro

directory

PowerShell, Windows 10, Windows 7, Windows Server 2019

comments

комментариев 26

Когда вы подключаете к компьютеру новое COM или некоторые USB устройства (например, USB модем, мобильный телефон, Bluetooth адаптер, конвертеров последовательных портов в USB и т.п.), Windows определяет его через механизм Plug-n-Play и назначит ему номер COM порта в диапазоне от 1 до 255 (COM1, COM2, COM3 и т.д.). При повторном подключении этого же устройств, ему назначается номер COM порта (Communication Port, или Serial port), зарезервированный за ним ранее. Новым устройствам выдается первый незанятый номер COM порта. Не редкость, когда внешние устройства при подключении создают сразу несколько COM портов (в моем случае после подключения адаптера Bluetooth, в системе появилось сразу 10 . новых COM портов).

Ряд приложений (как правило, довольно древних), способны адресовать только двухзначные номера COM портов, и отказываются работать с COM100 и выше. Или видят только COM1-COM9 устройства. Что делать, если подключенное устройство получило высокий номер COM порта? Можно ли сбросить нумерацию для зарезервированных COM портов и удалить назначенные порты?

Изменить номер COM порта устройства в Windows

В Windows можно вручную изменить номер COM порта, назначенный устройству. Предположим требуемый COM порт уже занят, и мы хотим его попробовать его освободить. Для этого:

  1. Откройте диспетчер устройств (Device Manager) командой devmgmt.msc;
  2. В меню выберите View->Show Hidden Devices;Отобразить скрытые устройства
  3. Затем разверните Ports (COM & LPT) и найдите в списке устройство;
  4. Перейдите на вкладку Port Settings и нажмите кнопку Advanced;
  5. Текущий номер COM порта, назначенный устройству указан в поле COMPortNumber;
  6. Чтобы изменить его, раскройте выпадающий список и выберите номер COMпорта, который хотите задать.Изменить номер назначенного COM порта

Но чаще всего изменить номер COM порт на другой не получится, так как все «низкие» COM порт уже используются (in use);

  • В этом случае нужно попробовать удалить резервацию COM порта за другим устройством. В ветке Ports (COM & LPT) найдите которому назначен нужный вам номер COM порта (бледная иконка означает, что данный COM порт назначен, но в сейчас это устройство не подключено);
  • Щелкните по нему ПКМ и выберите Uninstall;Удаление отключенного COM устройства
  • Теперь вы можете назначить освобожденный COM порт другому устройству. Еще раз откройте свойства вашего устройство, перейдите на вкладку PortSettings ->Advanced. Задайте свободный номер COM порта для вашего устройства.Смена COM порта
  • Однако такой способ позволяет освободить занятый COM порт не во всех случаях.

    Вы можете вывести полный список занятых COM портов в Windows с помощью PowerShell:

    Get-WMIObject Win32_SerialPort | Select-Object Name,DeviceID,Description
    Можно определить номер COM порта для определённого устройства по его имени, например:
    Get-WMIObject Win32_SerialPort | Where-Object < $_.Name -like "*Arduino*">|select name, deviceid
    Или
    Get-WMIObject Win32_SerialPort | Where-Object < $_.Name -like "*GPS*">|select name, deviceid

    Определяем процесс, который использует COM в Windows

    Вы не сможете освободить COM порт устройства, которое используется Windows или запущенной программой, процессом. Сначала вам нужно завершить процесс/программу, которая использует сейчас COM порт. Чтобы определить имя процесса, который использует COM порт понадобится утилита Process Explorer (https://docs.microsoft.com/en-gb/sysinternals/downloads/process-explorer).

    Сначала нужно вывести имя службы, которая использует COM порт. Выполните команду PowerShell:

    get-pnpdevice -class Ports -ea 0| Select Name, PNPDeviceID, Status, Service

    powershell: получить название процессов и служб использующих COM порты в windows

    Имя службы данного COM порта указано в столбце Service. Например, для COM2 это Serial. Теперь нужно запустить Process Explorer с правами администратора и выбрать в меню Find -> Find Handle or DLL. В строке Hangde or DLL substring введите значение Service, полученное ранее. В нашем примере это Serial .

    Process Explorer должен показать процесс, который использует сейчас ваш COM порт. Чтобы освободить COM порт, завершите процесс или программу.

    Process Explorer - ищем процесс или программу, которая используется com serial порт в windows

    Сброс назначенных COM портов Windows через реестр

    Информация об используемых COM портах хранится в ключе реестра CommDB в разделе HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\COM Name Arbiter

      Откройте редактор реестра (regedit.exe) и перейдите в указанную ветку.

    Важно! Настоятельно рекомендуем предварительно создать резервную копию данной ветки реестра (File -> Export). В том случае, если что-то пойдет не так, вы сможете вернуться к первоначальной конфигурации COM портов.

    COM Name Arbiter
    Значение параметра ComDB в двоичном формате определяет список COM портов, зарезервированных в системе. Каждый бит определяет состояние соответствующего порта (от 1 до 255). К примеру, если нам нужно оставить резервацию только для COM3, hex значение ComDB будет равно 04 (0000 0100);ComDB

    Важно! Будьте предельно внимательными, ни в коем случае не добавьте в этот параметр дополнительные байт, иначе система может начать падать в BSOD.

    Сбросить привязки COM портов

    Если нужно полностью сбросить все привязки COM, измените значение ключа ComDB на 0.

    SERIALCOMM

    Примечание. В разделе HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\SERIALCOMM можно увидеть полный список COM портов, доступных в Windows.В разделе HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\SERIALCOMM можно увидеться список COM портов, подключенных к системе.

    список COM портов в реестре

  • В ветке HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\WindowsNT\CurrentVersion\Ports содержится список назначенных COM портов. Все ненужные порты можно удалить (в нашем примере мы оставим только COM3 и удалим остальные);
  • Отключите все оборудование и перезагрузите Windows;
  • После перезагрузки включите оборудование в нужном порядке (переустановите конверторы USB-to-serial и т.д.). Все обнаруженные COM-порты автоматически определяться системой и им будут последовательно выделены номера COM портов.
  • Также вы можете использовать следующие две бесплатные утилиты для очистки занятых (In Use) COM портов:

    утилита COM Name Arbiter для очистки занятых COM портов в Windows

    • COM Name ArbiterTool – утилита для освобождения занятых COM портов. Запустите утилиту с правами администратора, выберите COM порты, которые вы хотите освободить и нажмите Clear unused Reservationsи Remove non-present devices;
    • Device Cleanup Tool – утилита используется для поиска в реестре информации о ранее подключенных устройств (в ветке HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Enum) и удаления неиспользуемых устройств и очистки резерваций COM портов.

    Предыдущая статьяПредыдущая статья Следующая статья Следующая статья

    Статья

    При присоединении абсолютно нового COM устройства или USB устройства, Windows обнаруживает благодаря Plug-n-Play и присваивает ему номер COM порта в диапазоне от 1 до 255. Если же вы подключаете устройство еще раз, ему прикрепляется тот же, зарезервированный за ним ранее COM порт. Если же вы подключаете еще одно новое устройство, то ему назначается другой незанятый номер COM порта.

    Некоторые программы (чаще старые), способны работать только на двухзначных номерах COM портов, и не работают с COM100 и более. Некоторые очень древние программы работают только портами с COM1-COM9. Как поступить, если устройство получило не нужный COM порт? Можно ли удалить номер зарезервированного COM порта?

    Смена номера COM порта для приложения или устройства

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

    1. Запустим диспетчер устройств (Device Manager) таким образом: set devmgr_show_nonpresent_devices=1
      start devmgmt.msc
    2. В меню консоли выберем View->Show Hidden Devices.
    3. Разверните ветку Ports (COM &LPT) и в списке найдите устройство, которому назначен нужный COM порт (бледная иконка означает, что данный COM порт назначен, но в настоящий момент это устройство не подключено). Щелкните по нему ПКМ и выберите Uninstall
    4. Освобожденный COM порт может быть назначен другому устройству. Найдите в этой же ветке свое устройство, откройте окно его свойств (Properties). Затем перейдите на вкладку PortSettings и нажмите кнопку Advanced. В выпадающем списке выберите неиспользуемый COM порт.

    Приведенная выше методика не всегда позволяет освободить занятый COM порт. В этом случае придется прибегнуть к редактированию реестра.

    Сброс привязок COM портов через реестр

    Информация об используемых COM портах хранится в ключе реестра CommDB в разделеHKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\COM Name Arbiter

      Откройте редактор реестра (regedit) и перейдите в указанную ветку.

    Важно! Настоятельно рекомендуем предварительно создать резервную копию данной ветки реестра (File -> Export). В том случае, если что-то пойдет не так, вы сможете вернуться к первоначальной конфигурации портов.

    Важно! Будьте предельно внимательными, ни в коем случае не добавьте в этот параметр дополнительные байт, иначе система может начать падать в BSOD.

    Примечание. В разделе HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\SERIALCOMM можно увидеться список COM портов, подключенных к системе.

    Добавить комментарий

    Ваш адрес email не будет опубликован. Обязательные поля помечены *