[仅适用于 KMDF]
驱动程序 EvtDeviceEject 事件回调函数处理从停靠站弹出设备所需的作。
语法
EVT_WDF_DEVICE_EJECT EvtWdfDeviceEject;
NTSTATUS EvtWdfDeviceEject(
[in] WDFDEVICE Device
)
{...}
参数
[in] Device
框架设备对象的句柄。
返回值
如果作成功,驱动程序必须返回STATUS_SUCCESS。 否则,它必须返回一个 NTSTATUS 值,该值 NT_SUCCESS 计算为 FALSE 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 |