[仅适用于 KMDF]
驱动程序的 EvtDeviceSetLock 事件回调函数锁定指定的设备,使其无法弹出或解锁设备,以便可以弹出设备。
语法
EVT_WDF_DEVICE_SET_LOCK EvtWdfDeviceSetLock;
NTSTATUS EvtWdfDeviceSetLock(
[in] WDFDEVICE Device,
[in] BOOLEAN IsLocked
)
{...}
参数
[in] Device
框架设备对象的句柄。
[in] IsLocked
一个布尔值,该值指示驱动程序必须锁定或解锁设备。 如果 TRUE,驱动程序必须锁定设备,使其无法弹出。 如果 FALSE,驱动程序必须解锁设备,以便可以弹出它。
返回值
如果驱动程序成功锁定或解锁设备,则必须返回STATUS_SUCCESS。 否则,它必须返回一个 NTSTATUS 值,该值 NT_SUCCESS 计算为 FALSE FALSE。
有关此回调函数的返回值的详细信息,请参阅 报告设备故障。
注解
基于框架的总线驱动程序可以提供 EvtDeviceSetLock 回调函数。 若要注册此回调函数,总线驱动程序调用 WdfPdoInitSetEventCallbacks。
当 PnP 管理器请求总线驱动程序锁定或解锁其中一个枚举的子设备时,框架将调用驱动程序的 EvtDeviceSetLock 回调函数。
不实现设备的 EvtDeviceSetLock 回调函数等效于返回计算为 FALSE的 NTSTATUS 值。
有关返回值的详细信息,请参阅 支持弹出设备。
要求
| 要求 | 价值 |
|---|---|
| 目标平台 | 普遍 |
| 最低 KMDF 版本 | 1.0 |
| 标头 | wdfpdo.h (包括 Wdf.h) |
| IRQL | PASSIVE_LEVEL |