WdfChildListRetrieveAddressDescription 函数 (wdfchildlist.h)

[仅适用于 KMDF]

WdfChildListRetrieveAddressDescription 方法查找具有指定标识说明的子设备,并检索设备的地址说明

语法

NTSTATUS WdfChildListRetrieveAddressDescription(
  [in]      WDFCHILDLIST                                 ChildList,
  [in]      PWDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER IdentificationDescription,
  [in, out] PWDF_CHILD_ADDRESS_DESCRIPTION_HEADER        AddressDescription
);

参数

[in] ChildList

子列表对象的句柄。

[in] IdentificationDescription

指向调用方分配 的WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER 结构的指针,该结构标识驱动程序提供的子标识说明。

[in, out] AddressDescription

指向标识子地址说明 的WDF_CHILD_ADDRESS_DESCRIPTION_HEADER 结构的指针。 框架将填充此说明。

返回值

如果操作成功,WdfChildListRetrieveAddressDescription 将返回STATUS_SUCCESS或NT_SUCCESS (状态) 等于 TRUE 的另一个状态值。 否则,此方法可能会返回以下值之一:

返回代码 说明
STATUS_INVALID_PARAMETER
输入参数无效。
STATUS_NO_SUCH_DEVICE
没有设备与指定的标识说明匹配。
STATUS_INVALID_DEVICE_REQUEST
子列表不包含地址说明,或者 AddressDescription 指定的地址说明的大小不正确。
 

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

如果驱动程序提供无效的对象句柄,则会发生系统 bug 检查。

注解

有关子列表的详细信息,请参阅 动态枚举

示例

下面的代码示例在子列表中搜索其标识说明包含 SomeValue 指定的值的子设备。 如果 WdfChildListRetrieveAddressDescription 找到设备,它将检索设备的地址说明。

MY_IDENTIFICATION_DESCRIPTION  id;
MY_ADDRESS_DESCRIPTION  addrDescrip;

WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER_INIT(
                                                 &id.Header,
                                                 sizeof(id)
                                                 );
WDF_CHILD_ADDRESS_DESCRIPTION_HEADER_INIT(
                                          &addrDescrip.Header,
                                          sizeof(addrDescrip)
                                          );

id.DeviceIdentifier = SomeValue;
status = WdfChildListRetrieveAddressDescription(
                                                list,
                                                &idDescrip.Header,
                                                &addrDescrip.Header
                                                );
if (!NT_SUCCESS(status) {
    return status;
}

要求

要求
目标平台 通用
最低 KMDF 版本 1.0
标头 wdfchildlist.h (包括 Wdf.h)
Library Wdf01000.sys (请参阅框架库 Versioning.)
IRQL <= DISPATCH_LEVEL
DDI 符合性规则 DriverCreate (kmdf) KmdfIrql (kmdf) KmdfIrql2 (kmdf) 、 KmdfIrqlExplicit (kmdf)

另请参阅

WDF_CHILD_ADDRESS_DESCRIPTION_HEADER

WDF_CHILD_ADDRESS_DESCRIPTION_HEADER_INIT

WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER

WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER_INIT