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


Именованные объекты устройств

Объект устройства, как и все объекты диспетчера объектов, может называться или не называться. Когда приложение в пользовательском режиме выполняет запрос ввода-вывода, оно указывает целевой объект операции по имени. Диспетчер объектов разрешает имя, чтобы определить назначение запроса ввода-вывода.

Важно!

Чтобы повысить уровень безопасности объектов устройств с именами драйверов, только если это необходимо. Именованные объекты устройств обычно необходимы только для прежних версий, например, если у вас есть приложение, которое ожидает открыть устройство с определенным именем или если вы используете устройство, отличное от PNP или управляющего устройства. Обратите внимание, что драйверам WDF не нужно называть свое устройство PnP, чтобы создать символьную ссылку с помощью WdfDeviceCreateSymbolicLink.

Драйвер может указать имя объекта устройства при вызове IoCreateDevice или IoCreateDeviceSecure для создания объекта устройства. Дополнительные сведения о том, когда и как присваивать объекту устройства имя, см. в разделе NT Device Names.

Именованный объект устройства также может иметь имя устройства MS-DOS, которое представляет собой символьную ссылку, созданную IoCreateSymbolicLink или IoCreateUnprotectedSymbolicLink. Драйверам WDM обычно не требуется имя устройства MS-DOS. Дополнительные сведения см. в разделе Имена устройств MS-DOS.

Важно!

Если вы используете именованный объект устройства, можно использовать IoCreateDeviceSecure и указать SDDL для его защиты. При реализации IoCreateDeviceSecure всегда укажите идентификатор GUID пользовательского класса для DeviceClassGuid. Здесь не следует указывать существующий GUID класса. Это может привести к нарушению параметров безопасности или совместимости для других устройств, принадлежащих к данному классу. Дополнительные сведения см. в разделе WdmlibIoCreateDeviceSecure.

Чтобы разрешить приложениям или другим драйверам WDF доступ к устройству PnP, следует использовать интерфейсы устройств. Дополнительные сведения см. в разделе Использование интерфейсов устройств. Интерфейс устройства служит символьной ссылкой на PDO стека устройств. После управления доступом к PDO можно указать строку SDDL в inf. Если строка SDDL отсутствует в INF-файле, Windows применит дескриптор безопасности по умолчанию. Дополнительные сведения см. в разделах Защита объектов устройств и SDDL для объектов устройств.

В этом разделе содержатся следующие подразделы:

Имена устройств NT

Имена устройств MS-DOS