WdfChildListUpdateChildDescriptionAsMissing 函数 (wdfchildlist.h)
[仅适用于 KMDF]
WdfChildListUpdateChildDescriptionAsMissing 方法通知框架指定的子设备当前已拔出或不可用。
语法
NTSTATUS WdfChildListUpdateChildDescriptionAsMissing(
[in] WDFCHILDLIST ChildList,
[in] PWDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER IdentificationDescription
);
参数
[in] ChildList
子列表对象的句柄。
[in] IdentificationDescription
指向调用方分配 WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER 结构的指针,该结构标识驱动程序提供的子 标识说明。
返回值
如果操作成功,WdfChildListUpdateChildDescriptionAsMissing 将返回STATUS_SUCCESS或NT_SUCCESS (状态) 等于 TRUE 的其他状态值。 否则,此方法可能会返回以下值之一:
返回代码 | 说明 |
---|---|
|
输入参数无效。 |
|
IdentificationDescription 指向的结构大小不正确。 |
|
在子列表中找不到指定的设备。 |
此方法还可能返回其他 NTSTATUS 值。
如果驱动程序提供无效的对象句柄,则会发生系统 bug 检查。
注解
即使驱动程序从未调用 WdfChildListAddOrUpdateChildDescriptionAsPresent 来报告设备存在,驱动程序也可以报告设备不可用。 在这种情况下, WdfChildListUpdateChildDescriptionAsMissing 方法仅返回STATUS_NO_SUCH_DEVICE。
如果要报告子列表中的所有设备都不可用,驱动程序只需调用 WdfChildListBeginScan,紧跟 WdfChildListEndScan,而不是为每个设备调用 WdfChildListUpdateChildDescriptionAsMissing 。
有关子设备和子列表的详细信息,请参阅 动态枚举。
示例
下面的代码示例通知框架具有指定序列号的子设备不可用。
PDO_IDENTIFICATION_DESCRIPTION description;
NTSTATUS status;
WDF_CHILD_IDENTIFICATION_DESCRIPTION_HEADER_INIT(
&description.Header,
sizeof(description)
);
description.SerialNo = SerialNo;
status = WdfChildListUpdateChildDescriptionAsMissing(
list,
&description.Header
);
要求
要求 | 值 |
---|---|
目标平台 | 通用 |
最低 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_IDENTIFICATION_DESCRIPTION_HEADER