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 的另一个状态值。 否则,此方法可能会返回以下值之一:
返回代码 | 说明 |
---|---|
|
输入参数无效。 |
|
没有设备与指定的标识说明匹配。 |
|
子列表不包含地址说明,或者 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