WdfPdoInitAssignContainerID 函数 (wdfpdo.h)

[仅适用于 KMDF]

WdfPdoInitAssignContainerID 方法更新子设备的容器 ID。

语法

NTSTATUS WdfPdoInitAssignContainerID(
  [in] PWDFDEVICE_INIT  DeviceInit,
  [in] PCUNICODE_STRING ContainerID
);

参数

[in] DeviceInit

指向 WDFDEVICE_INIT 结构的指针。

[in] ContainerID

指向包含容器 ID 字符串的 UNICODE_STRING 结构的指针。 驱动程序可以从分页池分配字符串的缓冲区。

返回值

如果作成功,该方法将返回STATUS_SUCCESS。 其他返回值包括:

返回代码 说明
STATUS_INVALID_DEVICE_REQUEST
驱动程序正在初始化 FDO 而不是 PDO。
STATUS_INSUFFICIENT_RESOURCES
驱动程序无法分配空间来存储容器 ID 字符串。
 

此方法还可以返回其他 NTSTATUS 值

注解

有关容器 ID 的详细信息,请参阅 设备标识字符串

驱动程序必须先调用 WdfPdoInitAssignContainerID,然后才能调用 WdfDeviceCreate。 有关调用 WdfDeviceCreate的详细信息,请参阅 创建框架设备对象

例子

下面的代码示例初始化 UNICODE_STRING 结构,将 Unicode 字符串存储在结构中,然后将 Unicode 字符串注册为设备的容器 ID。

UNICODE_STRING containerId = {0}; 

RtlInitUnicodeString(
                     &containerId,
                     strContainerId //Unicode string for container ID
                     );
status = WdfPdoInitAssignContainerID(
                                     pDeviceInit,
                                     &containerId
                                     );

要求

要求 价值
目标平台 普遍
最低 KMDF 版本 1.9
标头 wdfpdo.h (包括 Wdf.h)
图书馆 Wdf01000.sys(请参阅框架库版本控制。
IRQL PASSIVE_LEVEL
DDI 符合性规则 DriverCreate(kmdf)

另请参阅

RtlInitUnicodeString

WdfPdoInitAddCompatibleID

WdfPdoInitAddHardwareID

WdfPdoInitAssignDeviceID

WdfPdoInitAssignInstanceID