EVT_WDF_DEVICE_EJECT回调函数 (wdfpdo.h)
[仅适用于 KMDF]
驱动程序的 EvtDeviceEject 事件回调函数处理从扩展坞中弹出设备所需的操作。
语法
EVT_WDF_DEVICE_EJECT EvtWdfDeviceEject;
NTSTATUS EvtWdfDeviceEject(
[in] WDFDEVICE Device
)
{...}
参数
[in] Device
框架设备对象的句柄。
返回值
如果操作成功,驱动程序必须返回STATUS_SUCCESS。 否则,它必须返回一个 NTSTATUS 值 ,NT_SUCCESS 计算结果为 FALSE。 不要返回STATUS_NOT_SUPPORTED。
有关返回值的详细信息,请参阅 报告设备故障。
注解
基于框架的总线驱动程序可以提供 EvtDeviceEject 回调函数。 如果总线驱动程序必须执行从设备的扩展坞中实际弹出其枚举子设备之一的操作,则总线驱动程序必须提供 EvtDeviceEject 回调函数。 若要注册此回调函数,总线驱动程序必须调用 WdfPdoInitSetEventCallbacks。
在调用 EvtDeviceEject 回调函数之前,框架会调用驱动程序的 EvtDeviceD0Exit 和 EvtDeviceReleaseHardware 回调函数。
如果驱动程序的 EvtDeviceEject 回调函数返回STATUS_SUCCESS,框架会更新驱动程序的子列表,以指示弹出的设备不再可用。 因此,驱动程序不必调用 WdfPdoMarkMissing 或 WdfChildListUpdateChildDescriptionAsMissing。
有关设备弹出的详细信息,请参阅 支持可弹出设备。
要求
要求 | 值 |
---|---|
目标平台 | 通用 |
最低 KMDF 版本 | 1.0 |
标头 | wdfpdo.h (包括 Wdf.h) |
IRQL | PASSIVE_LEVEL |