В диспетчере устройств Windows отсутствует COM и LPT порт: настройка виртуальных портов

Отсутствие узла «Порты (COM и LPT)» в Диспетчере устройств Windows 10/11 вызвано отключением встроенных контроллеров в BIOS/UEFI, отсутствием физических интерфейсов RS-232/IEEE 1284 на современных материнских платах или повреждением драйверов Plug and Play. Для подключения торгового оборудования, станков с ЧПУ, микроконтроллеров и консольных кабелей требуется программная инициализация физических интерфейсов или создание виртуальных последовательных портов. Данное руководство содержит инструкции по принудительному включению портов в ОС и эмуляции пар виртуальных COM-портов.

Экспресс-проверка первичной диагностики

  • Включение отображения скрытых устройств: откройте Диспетчер устройств через Win + XДиспетчер устройств, в верхнем меню выберите Вид → Показать скрытые устройства (View → Show hidden devices).
  • Проверка аппаратной поддержки в BIOS/UEFI: при перезагрузке войдите в BIOS (клавиши Del или F2), найдите раздел Advanced → Onboard Devices Configuration и убедитесь, что параметры Serial Port и Parallel Port находятся в состоянии Enabled.
  • Проверка физических преобразователей USB-to-UART/RS232: отключите эмулятор или кабель из разъема USB, проверьте целостность линии и переподключите в прямой порт USB 2.0/3.0 на задней панели системного блока (минуя USB-хабы).
  • Проверка состояния службы Plug and Play: нажмите Win + R, введите services.msc, найдите службу Plug and Play и убедитесь, что тип запуска установлен в Автоматически, а статус — Выполняется.

Основные методы восстановления и настройки виртуальных портов

  1. Принудительное добавление устаревшего оборудования через Мастер установки

    Если материнская плата не имеет встроенного чипа Super I/O, узел COM/LPT не создается автоматически. Добавление выполняется вручную:

    Нажмите комбинацию клавиш Win + R, введите команду hdwwiz.exe и нажмите Enter.

    В окне «Мастер установки оборудования» нажмите Далее → выберите пункт Установка оборудования, выбранного из списка вручную (для опытных пользователей) (Install the hardware that I manually select from a list) → Далее.

    В списке категорий найдите и выберите Порты (COM и LPT) (Ports (COM & LPT)) → Далее.

    В левой колонке «Изготовитель» выберите (Стандартные типы портов), в правой колонке «Модель» выберите Последовательный порт (Serial Port) или Порт принтера (Printer Port) → нажмите Далее для завершения установки.

  2. Установка эмулятора Null-modem com0com

    Для связывания программного обеспечения (эмуляторов POS-терминалов, SCADA-систем) без использования физических кабелей требуется виртуальная пара COM-портов.

    Скачайте дистрибутив com0com с подписью драйверов (Signed Driver) для Windows 10/11 x64.

    Запустите командную строку от имени Администратора и отключите обязательную проверку цифровой подписи, если драйвер не загружается: bcdedit /set testsigning on.

    Запустите установщик, выберите компоненты CNCA0 и CNCB0. По завершении откройте Setup Command Prompt из папки программы.

    Создайте виртуальную пару командами: install PortName=COM10 PortName=COM11 и примените конфигурацию командами change CNCA0 PortName=COM10 и change CNCB0 PortName=COM11.

  3. Развертывание виртуальных портов через VSPE (Virtual Serial Ports Emulator)

    Запустите утилиту VSPE от имени Администратора.

    Выберите пункт меню Device → Create (или нажмите клавишу F5).

    В выпадающем списке Device type выберите Pair (для соединения двух приложений) или Connector (для создания одиночного виртуального порта) → нажмите Next.

    Укажите номера виртуальных портов (например, COM3 и COM4), установите флажок Emulate baud rate для строгого воспроизведения скорости передачи данных и нажмите Finish.

  4. Установка драйверов для физических адаптеров USB-to-Serial (FTDI, Prolific, CH340)

    Если порт не отображается при подключении адаптера USB-RS232:

    Откройте Win + XДиспетчер устройств. В разделе Другие устройства (Other devices) найдите устройство с желтым восклицательным знаком (USB Serial Converter, USB-UART, FT232R USB UART).

    Кликните правой кнопкой мыши → Обновить драйверНайти драйверы на этом компьютере.

    Укажите путь к распакованной папке с официальным драйвером (для CH340 — CH341SER.INF, для FTDI — ftdiport.inf) и переназначьте порт вручную через Свойства → Настройки порта → Дополнительно → Номер COM-порта.

Сводные параметры виртуальных и физических портов, ошибки и способы устранения

Параметр / Код ошибки Типовое значение / Симптом Причина возникновения Метод решения
Код 10 (Code 10) Запуск этого устройства невозможен Конфликт ресурсов, сбой подписи драйвера (часто у чипов Prolific PL2303HXA) Откат драйвера до версии 3.3.2.102 или использование оригинального чипа FTDI.
Код 31 (Code 31) Устройство работает неправильно Windows не может загрузить драйвер, требуемый для этого устройства Запуск cmd от имени администратора, выполнение sfc /scannow, переустановка драйвера INF-файлом.
Код 45 (Code 45) Устройство не подключено к компьютеру Скрытый порт, физически отключенный контроллер или обесточенная плата PCI-e Включение контроллера в BIOS/UEFI, физическое переподключение карты расширения PCIe-to-RS232.
Скорость (Baud Rate) 9600 / 115200 bps Рассинхронизация скорости передачи данных между ПО и виртуальным портом Диспетчер устройств → Порты → Свойства → Параметры порта → Биты в секунду (Bits per second).
Входной/Выходной буфер FIFO RX / TX Buffer (1 — 14 байт) Переполнение или потери пакетов при обмене данными Настройки порта → Дополнительно → Снять галочку «Использовать буферы FIFO» (Use FIFO buffers).
Ключ реестра COMDB ComDB в HKLMSYSTEMCurrentControlSetControlCOM Name Arbiter Исчерпание массива занятых COM-портов (все порты от COM1 до COM256 подсвечиваются как «занято») Сброс значения бинарного параметра ComDB в 00 00 00 00 через regedit.

Нестандартные причины сбоя и альтернативные решения

Если стандартная установка через hdwwiz.exe и эмуляторы не приводят к появлению портов, проблема заключается в низкоуровневых блокировках ОС или аппаратуры.

1. Очистка базы данных занятых COM-портов (COM Name Arbiter)

При частом переподключении USB-Serial адаптеров операционная система заносит их в резерв, из-за чего новые виртуальные порты не могут получить индекс ниже COM256.

Нажмите Win + R, введите regedit и нажмите Enter.

Перейдите по пути: HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlCOM Name Arbiter.

Найдите параметр ComDB, нажмите правой кнопкой мыши → Изменить и обнулите значение, установив все байты в 00. Нажмите ОК и перезагрузите ПК.

2. Отключение проверки цифровой подписи драйверов (Driver Signature Enforcement)

Виртуальные эмуляторы портов сторонних разработчиков (com0com, VSPE, Tibbo) блокируются защитником Windows 10/11 Kernel Mode Code Signing (KMCS).

Запустите PowerShell от имени администратора и последовательно выполните команды:

bcdedit.exe /set loadoptions DISABLE_INTEGRITY_CHECKS

bcdedit.exe /set testsigning on

Перезагрузите систему. На рабочем столе появится надпись «Тестовый режим» (Test Mode), разрешающая работу любых эмуляторов виртуальных COM-портов.

Критическое предупреждение по безопасности: Работа в тестовом режиме (Test Mode) снижает защищенность ядра ОС от уязвимостей типа Ring 0. Используйте данный режим исключительно на изолированных технологических ПК или в закрытых сегментах технологических сетей (VLAN).

3. Принудительная инициализация через командную строку PowerShell

Для создания виртуального порта без стороннего софта при наличии службы Hyper-V разверните проброс через PowerShell:

Set-VMComPort -VMName "ProductionVM" -Number 1 -Path "\.pipeVirtualCOMPort1"

Данная команда создаст именованный канал (Named Pipe), эмулирующий аппаратный COM-порт внутри виртуальной среды, доступный для сторонних сервисов связывания.


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