Função WdfDeviceInitRegisterPowerPolicyStateChangeCallback (wdfdevice.h)
[Aplica-se somente ao KMDF]
Observação
Esse método é apenas para uso interno da Microsoft.
O método WdfDeviceInitRegisterPowerPolicyStateChangeCallback registra uma função de retorno de chamada de evento fornecida pelo driver que a estrutura chama quando a máquina de estado da política de energia do dispositivo muda de estado.
Sintaxe
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
);
Parâmetros
[in] DeviceInit
Um ponteiro fornecido pelo chamador para uma estrutura WDFDEVICE_INIT .
[in] PowerPolicyState
Um enumerador WDF_DEVICE_POWER_POLICY_STATE que identifica o estado do computador da política de energia para o qual o driver está solicitando notificação.
[in] EvtDevicePowerPolicyStateChange
Um ponteiro fornecido pelo chamador para a função de retorno de chamada de evento EvtDevicePowerPolicyStateChange do driver.
[in] CallbackTypes
Uma combinação ORed de enumeradores com tipo WDF_STATE_NOTIFICATION_TYPE.
Retornar valor
Se WdfDeviceInitRegisterPowerPolicyStateChangeCallback não encontrar erros, ele retornará STATUS_SUCCESS. Os valores de retorno adicionais incluem:
Código de retorno | Descrição |
---|---|
|
Um parâmetro inválido foi detectado. |
|
Não há memória suficiente para concluir a operação. |
Comentários
Se o driver chamar WdfDeviceInitRegisterPowerPolicyStateChangeCallback, ele deverá fazer isso antes de chamar WdfDeviceCreate.
Para obter mais informações sobre WdfDeviceInitRegisterPowerPolicyStateChangeCallback, consulte State Machines in the Framework.
Exemplos
O exemplo de código a seguir registra uma função de retorno de chamada de evento que a estrutura chamará quando o computador de estado da política de energia do dispositivo mudar de estado.
status = WdfDeviceInitRegisterPowerPolicyStateChangeCallback(
DeviceInit,
WdfDevStatePwrPolCheckPowerPageable,
PciDrvPowerPolicyStateChangeCallback,
StateNotificationAllStates
);
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Universal |
Versão mínima do KMDF | 1.0 |
Cabeçalho | wdfdevice.h (inclua Wdf.h) |
Biblioteca | Wdf01000.sys (consulte Controle de versão da biblioteca de estrutura.) |
IRQL | PASSIVE_LEVEL |
Regras de conformidade da DDI | ChildDeviceInitAPI(kmdf), DeviceInitAPI(kmdf), DriverCreate(kmdf), InitFreeDeviceCallback(kmdf), InitFreeDeviceCreate(kmdf), InitFreeNull(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), PdoDeviceInitAPI(kmdf), PdoInitFreeDeviceCallback(kmdf), PdoInitFreeDeviceCreate(kmdf) |