WdfDeviceInitSetPowerPolicyEventCallbacks 函数 (wdfdevice.h)

[适用于 KMDF 和 UMDF]

WdfDeviceInitSetPowerPolicyEventCallbacks 方法注册驱动程序的电源策略事件回调函数。

语法

void WdfDeviceInitSetPowerPolicyEventCallbacks(
  [in] PWDFDEVICE_INIT                   DeviceInit,
  [in] PWDF_POWER_POLICY_EVENT_CALLBACKS PowerPolicyEventCallbacks
);

参数

[in] DeviceInit

调用方提供的指向 WDFDEVICE_INIT 结构的指针。

[in] PowerPolicyEventCallbacks

指向调用方初始化 WDF_POWER_POLICY_EVENT_CALLBACKS 结构的指针。

返回值

没有

言论

如果驱动程序调用 WdfDeviceInitSetPowerPolicyEventCallbacks,则必须在调用 WdfDeviceCreate之前执行此作。 有关详细信息,请参阅 创建框架设备对象

有关 WdfDeviceInitSetPowerPolicyEventCallbacks的详细信息,请参阅 Power Policy 所有权

例子

下面的代码示例初始化 WDF_POWER_POLICY_EVENT_CALLBACKS 结构,然后调用 WdfDeviceInitSetPowerPolicyEventCallbacks

WDF_POWER_POLICY_EVENT_CALLBACKS powerPolicyCallbacks;

WDF_POWER_POLICY_EVENT_CALLBACKS_INIT(&powerPolicyCallbacks);
powerPolicyCallbacks.EvtDeviceArmWakeFromS0 = PciDrvEvtDeviceWakeArmS0;
powerPolicyCallbacks.EvtDeviceDisarmWakeFromS0 = PciDrvEvtDeviceWakeDisarmS0;
powerPolicyCallbacks.EvtDeviceWakeFromS0Triggered = PciDrvEvtDeviceWakeTriggeredS0;
powerPolicyCallbacks.EvtDeviceArmWakeFromSx = PciDrvEvtDeviceWakeArmSx;
powerPolicyCallbacks.EvtDeviceDisarmWakeFromSx = PciDrvEvtDeviceWakeDisarmSx;
powerPolicyCallbacks.EvtDeviceWakeFromSxTriggered = PciDrvEvtDeviceWakeTriggeredSx;
WdfDeviceInitSetPowerPolicyEventCallbacks(
                                          DeviceInit,
                                          &powerPolicyCallbacks
                                          );

要求

要求 价值
目标平台 普遍
最低 KMDF 版本 1.0
最低 UMDF 版本 2.0
标头 wdfdevice.h (包括 Wdf.h)
Wdf01000.sys(KMDF):WUDFx02000.dll (UMDF)
IRQL <= DISPATCH_LEVEL
DDI 符合性规则 ChildDeviceInitAPI(kmdf)DeviceInitAPI(kmdf)DriverCreate(kmdf)FDOPowerPolicyOwnerAPI(kmdf)KmdfIrql(kmdf)KmdfIrql2(kmdf),KmdfIrqlExplicit(kmdf),NonFDONotPowerPolicyOwnerAPI(kmdf)PdoDeviceInitAPI(kmdf)

另请参阅

WDF_POWER_POLICY_EVENT_CALLBACKS_INIT

WdfDeviceInitSetPnpPowerEventCallbacks