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 来分配名称,驱动程序随后可以使用 NULLDeviceName 参数调用 WdfDeviceInitAssignName 以清除设备名称。 如果设备名称 NULL 且设备对象需要名称(因为它表示 PDO 或 控制设备),则操作系统将创建一个名称。
有关命名设备对象的详细信息,请参阅 Framework-Based 驱动程序中的
有关调用 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) kmdf),KmdfIrql(kmdf),KmdfIrql2(kmdf),KmdfIrqlExplicit(kmdf),PdoDeviceInitAPI(kmdf), PdoInitFreeDeviceCallback(kmdf), PdoInitFreeDeviceCreate(kmdf) |