WdfDeviceInitRegisterPowerPolicyStateChangeCallback-Funktion (wdfdevice.h)
[Gilt nur für KMDF]
Hinweis
Diese Methode ist nur für die interne Verwendung von Microsoft vorgesehen.
Die WdfDeviceInitRegisterPowerPolicyStateChangeCallback-Methode registriert eine vom Treiber bereitgestellte Ereignisrückruffunktion, die das Framework aufruft, wenn der Energierichtlinienzustand eines Geräts den Zustand ändert.
Syntax
NTSTATUS WdfDeviceInitRegisterPowerPolicyStateChangeCallback(
[in] PWDFDEVICE_INIT DeviceInit,
[in] WDF_DEVICE_POWER_POLICY_STATE PowerPolicyState,
[in] PFN_WDF_DEVICE_POWER_POLICY_STATE_CHANGE_NOTIFICATION EvtDevicePowerPolicyStateChange,
[in] ULONG CallbackTypes
);
Parameter
[in] DeviceInit
Ein vom Aufrufer bereitgestellter Zeiger auf eine WDFDEVICE_INIT-Struktur .
[in] PowerPolicyState
Ein WDF_DEVICE_POWER_POLICY_STATE Enumerator, der den Zustand des Power Policy-Computers identifiziert, für den der Treiber eine Benachrichtigung anfordert.
[in] EvtDevicePowerPolicyStateChange
Ein vom Aufrufer bereitgestellter Zeiger auf die EvtDevicePowerPolicyStateChange-Ereignisrückruffunktion des Treibers.
[in] CallbackTypes
Eine ORed-Kombination aus WDF_STATE_NOTIFICATION_TYPE typisierten Enumeratoren.
Rückgabewert
Wenn WdfDeviceInitRegisterPowerPolicyStateChangeCallback keine Fehler aufweist, wird STATUS_SUCCESS zurückgegeben. Weitere Rückgabewerte sind:
Rückgabecode | Beschreibung |
---|---|
|
Ein ungültiger Parameter wurde erkannt. |
|
Es ist nicht genügend Arbeitsspeicher vorhanden, um den Vorgang abzuschließen. |
Hinweise
Wenn Ihr Treiber WdfDeviceInitRegisterPowerPolicyStateChangeCallback aufruft, muss er dies tun, bevor er WdfDeviceCreate aufruft.
Weitere Informationen zu WdfDeviceInitRegisterPowerPolicyStateChangeCallback finden Sie unter Zustandscomputer im Framework.
Beispiele
Im folgenden Codebeispiel wird eine Ereignisrückruffunktion registriert, die vom Framework aufgerufen wird, wenn sich der Zustand des Power Policy-Zustandscomputers des Geräts ändert.
status = WdfDeviceInitRegisterPowerPolicyStateChangeCallback(
DeviceInit,
WdfDevStatePwrPolCheckPowerPageable,
PciDrvPowerPolicyStateChangeCallback,
StateNotificationAllStates
);
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Universell |
KMDF-Mindestversion | 1.0 |
Kopfzeile | wdfdevice.h (einschließen von Wdf.h) |
Bibliothek | Wdf01000.sys (siehe Versionierung der Frameworkbibliothek.) |
IRQL | PASSIVE_LEVEL |
DDI-Complianceregeln | ChildDeviceInitAPI(kmdf), DeviceInitAPI(kmdf), DriverCreate(kmdf), InitFreeDeviceCallback(kmdf), InitFreeDeviceCreate(kmdf), InitFreeNull(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoDeviceInitAPI(kmdf), PdoInitFreeDeviceCallback(kmdf), PdoInitFreeDeviceCreate(kmdf) |