IRP_MJ_POWER

所有驱动程序都必须准备好为 DispatchPower 例程中的IRP_MJ_POWER请求提供服务。

发送时间

操作系统运行时,电源管理器或驱动程序可以随时发送 IRP_MJ_POWER 请求。

输入参数

取决于 IRP 当前 I/O 堆栈位置 MinorFunction 处的值。 每个 IRP_MJ_POWER 请求都指定一个标识所请求电源操作的次要函数代码。

输出参数

取决于 IRP 当前 I/O 堆栈位置 MinorFunction 处的值。

Operation

除了管理 IRP 处理的常用规则 外,IRP_MJ_POWER IRP 具有以下特殊要求:接收电源 IRP 的驱动程序不得更改 IRP 中由电源管理器或更高级别驱动程序设置的任何 I/O 堆栈位置的主要和次要功能代码。 在 IRP 完成之前,电源管理器依赖于这些函数代码保持不变。 违反此规则可能会导致难以调试的问题。 例如,操作系统可能会停止响应或“挂起”。

有关IRP_MJ_POWER请求的详细信息,请参阅电源管理次要 IRP

要求

标头

Wdm.h(包括 Wdm.h、Ntddk.h 或 Ntifs.h)

另请参阅

DispatchPower