Функция WdfDeviceInitAssignName (wdfdevice.h)

[Относится только к KMDF]

Метод WdfDeviceInitAssignName назначает имя устройства объекту устройства.

Синтаксис

NTSTATUS WdfDeviceInitAssignName(
  [in]           PWDFDEVICE_INIT  DeviceInit,
  [in, optional] PCUNICODE_STRING DeviceName
);

Параметры

[in] DeviceInit

Указатель на структуру WDFDEVICE_INIT .

[in, optional] DeviceName

Указатель на структуру UNICODE_STRING , представляющую имя устройства.

Возвращаемое значение

Если WdfDeviceInitAssignName не обнаруживает ошибок, он возвращает STATUS_SUCCESS. К дополнительным возвращаемым значениям относятся:

Код возврата Описание
STATUS_INSUFFICIENT_RESOURCES
Система не может выделить место для хранения имени устройства.

Комментарии

Если драйвер вызывает WdfDeviceInitAssignName, он должен сделать это перед вызовом WdfDeviceCreate.

Если драйвер вызывает WdfDeviceInitAssignName для назначения имени, драйвер может впоследствии вызвать WdfDeviceInitAssignName с параметром DeviceName NULL, чтобы очистить имя устройства. Если имя устройства равно NULL , а объекту устройства требуется имя (так как оно представляет PDO или управляющее устройство), операционная система создаст имя.

Дополнительные сведения об именовании объектов устройств см. в разделе Управление доступом к устройствам в Framework-Based Drivers.

Дополнительные сведения о вызове WdfDeviceCreate см. в разделе Создание объекта устройства платформы.

Примеры

В следующем примере кода присваивается имя устройства NT устройству.

DECLARE_CONST_UNICODE_STRING(MyDeviceName, L"\\Device\\Ramdisk") ;
status = WdfDeviceInitAssignName(
                                 DeviceInit,
                                 &MyDeviceName
                                 );
if (!NT_SUCCESS(status)) {
    return status;
}

Требования

Требование Значение
Целевая платформа Универсальное
Минимальная версия KMDF 1,0
Верхняя часть wdfdevice.h (включая Wdf.h)
Библиотека Wdf01000.sys (см. раздел Управление версиями библиотеки Платформы).
IRQL PASSIVE_LEVEL
Правила соответствия DDI ChildDeviceInitAPI(kmdf), ControlDeviceInitAPI(kmdf), DeviceInitAPI(kmdf), DriverCreate(kmdf), InitFreeDeviceCallback(kmdf), InitFreeDeviceCreate(kmdf), InitFreeNull(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoDeviceInitAPI(kmdf), PdoInitFreeDeviceCallback(kmdf), PdoInitFreeDeviceCreate(kmdf)

См. также раздел

WdfDeviceRetrieveDeviceName