Функция 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. К дополнительным возвращаемым значениям относятся:
Код возврата | Описание |
---|---|
|
Система не может выделить место для хранения имени устройства. |
Комментарии
Если драйвер вызывает 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) |
См. также раздел
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по