Поделиться через


Внешнее именование COM-портов

По умолчанию драйвер последовательной функции создает символьное имя ссылки для последовательного порта и регистрирует интерфейс устройства GUID_DEVINTERFACE_COMPORT для порта. По определению последовательный порт является COM-портом , только если с ним связан интерфейс устройства com-порта.

Для Plug and Play последовательного устройства внешнее именование управляется значением записи SerialSkipExternalNaming под аппаратным ключом устройства. Если значение записи SerialSkipExternalNaming не существует или его значение равно нулю, Serial создает интерфейс устройства с com-портом; В противном случае Serial не создает интерфейс COM-порта. Serial не поддерживает это значение записи для устаревшего COM-порта и всегда создает интерфейс устройства com-порта для устаревшего COM-порта.

Serial выполняет следующие задачи для создания интерфейса устройства с COM-портом:

  • Создает символьную связь между \DosDevices\<PortName> и именем внутреннего объекта устройства для COM-порта.

    <PortName> — это значение записи PortName (или Идентификатор) для COM-порта. Установщик класса Ports задает значение PortName в значение COM<n>, где <n> — номер com-порта, который установщик получает из базы данных COM-портов. Serial использует это имя для создания символьной ссылки на порт. Количество ПОРТОВ COM, поддерживаемых Windows, не ограничено. Клиенты пользовательского режима используют символьное имя ссылки, чтобы открыть COM-порт.

  • Записывает значение записи в раздел \Registry\Machine\Hardware\DeviceMap\SERIALCOMM .

    Имя значения записи — \Device\Serial<m>, где <m> — номер, назначенный устройству последовательным порядком. Обратите внимание, что серийный номер <устройства m> не совпадает с номером <порта COM n>. Значение \Device\Serial<m> равно значению PortName.

  • Регистрирует интерфейс устройства типа GUID_DEVINTERFACE_COMPORT для COM-порта.

    Клиенты могут зарегистрироваться для получения уведомлений о поступлении интерфейса COM-порта или получить символьные имена ссылок для всех зарегистрированных интерфейсов COM-портов.

Дополнительные сведения о том, как Serial использует значения записей реестра, см. в разделе Параметры реестра для последовательного сериала.