WdfDevStateIsNP 函数 (wdfdevice.h)

[适用于 KMDF 和 UMDF]

WdfDevStateIsNP 方法返回一个布尔值,该值指示指定的电源状态还是电源策略状态是 不可分页 状态。

语法

BOOLEAN WdfDevStateIsNP(
  [in] ULONG State
);

参数

[in] State

WDF_DEVICE_POWER_STATE类型化枚举器或 WDF_DEVICE_POWER_POLICY_STATE类型化枚举器。

返回值

如果调用驱动程序当前不可分页,则 WdfDevStateIsNP 方法返回 TRUE。 否则,该方法返回 FALSE

注解

若要获取框架电源状态机的当前状态,驱动程序可以从 PnP 或电源回调函数中调用 WdfDeviceGetDevicePowerState。 若要获取框架电源策略状态机的当前状态,驱动程序可以从电源策略回调函数中调用 WdfDeviceGetDevicePowerPolicyState。 驱动程序调用 WdfDeviceGetDevicePowerStateWdfDeviceGetDevicePowerPolicyState后,它可以调用 WdfDevStateIsNP 来确定返回的状态是否表示可分页或不可分页状态。 如果框架的状态机处于不可分页状态,驱动程序不可分页,并且不得执行可能导致作系统访问分页文件的任何作。 此类作包括访问文件、注册表或分页池。

例子

如果框架的电源状态机当前处于不可分页状态,则以下代码示例将 不可分页 值设置为 true

BOOLEAN nonpageable;

nonpageable = WdfDevStateIsNP(WdfDeviceGetDevicePowerState(device));

要求

要求 价值
目标平台 普遍
最低 KMDF 版本 1.0
最低 UMDF 版本 2.0
标头 wdfdevice.h (包括 Wdf.h)
图书馆 Wdf01000.sys(KMDF):WUDFx02000.dll (UMDF)
IRQL 任何级别

另请参阅

WdfDeviceInitSetPowerNotPageable

WdfDeviceInitSetPowerPageable