Compartilhar via


Função WdfDeviceAssignSxWakeSettings (wdfdevice.h)

[Aplica-se a KMDF e UMDF]

O método WdfDeviceAssignSxWakeSettings fornece informações fornecidas pelo driver sobre a capacidade de um dispositivo disparar um sinal de ativação enquanto o dispositivo e o sistema estão em um estado de baixa potência.

Sintaxe

NTSTATUS WdfDeviceAssignSxWakeSettings(
  [in] WDFDEVICE                              Device,
  [in] PWDF_DEVICE_POWER_POLICY_WAKE_SETTINGS Settings
);

Parâmetros

[in] Device

Um identificador para um objeto de dispositivo de estrutura.

[in] Settings

Um ponteiro para uma estrutura de WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS fornecida pelo chamador.

Valor de retorno

Se a operação for bem-sucedida, WdfDeviceAssignSxWakeSettings retornará STATUS_SUCCESS. Os valores de retorno adicionais incluem:

Código de retorno Descrição
STATUS_INVALID_DEVICE_REQUEST
O driver de chamada não é o proprietário da política de energia do dispositivo.
STATUS_INVALID_PARAMETER
Um valor de de Configurações de inválido é detectado.
STATUS_INFO_LENGTH_MISMATCH
O tamanho da estrutura de WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS está incorreto.
STATUS_POWER_STATE_INVALID
O driver do barramento indica que o dispositivo não pode disparar um sinal de ativação ou a estrutura WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS contém um estado de energia de dispositivo inválido.
 

O método pode retornar outros valores NTSTATUS .

Uma verificação de bug ocorre se o driver fornece um identificador de objeto inválido.

Observações

Para obter mais informações, consulte suporte aode ativação do sistema.

Exemplos

O exemplo de código a seguir inicializa uma estrutura de WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS e chama WdfDeviceAssignSxWakeSettings. O exemplo usa as configurações padrão que WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS_INIT conjuntos.

WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS  wakeSettings;
NTSTATUS  status = STATUS_SUCCESS;

WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS_INIT(&wakeSettings);

status = WdfDeviceAssignSxWakeSettings(
                                       device,
                                       &wakeSettings
                                       );
if (!NT_SUCCESS(status)) {
    return status;
}

Requisitos

Requisito Valor
da Plataforma de Destino Universal
versão mínima do KMDF 1.0
versão mínima do UMDF 2.0
cabeçalho wdfdevice.h (inclua Wdf.h)
biblioteca Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL <= DISPATCH_LEVEL
regras de conformidade de DDI DriverCreate(kmdf), FDOPowerPolicyOwnerAPI(kmdf), KmdfIrql(kmdf), kmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), nonFDONotPowerPolicyOwnerAPI(kmdf)

Consulte também

WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS

WdfDeviceAssignS0IdleSettings