Condividi tramite


Funzione WdfDeviceAssignSxWakeSettings (wdfdevice.h)

[Si applica a KMDF e UMDF]

Il metodo WdfDeviceAssignSxWakeSettings fornisce informazioni fornite dal driver sulla capacità di un dispositivo di attivare un segnale di riattivazione mentre sia il dispositivo che il sistema si trovano in uno stato a basso consumo.

Sintassi

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

Parametri

[in] Device

Handle per un oggetto dispositivo framework.

[in] Settings

Puntatore a una struttura di WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS fornita dal chiamante.

Valore restituito

Se l'operazione ha esito positivo, WdfDeviceAssignSxWakeSettings restituisce STATUS_SUCCESS. I valori restituiti aggiuntivi includono:

Codice restituito Descrizione
STATUS_INVALID_DEVICE_REQUEST
Il driver chiamante non è il proprietario dei criteri di alimentazione del dispositivo.
STATUS_INVALID_PARAMETER
Viene rilevato un valore di impostazioni di non valido.
STATUS_INFO_LENGTH_MISMATCH
Le dimensioni della struttura di WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS non sono corrette.
STATUS_POWER_STATE_INVALID
Il driver del bus indica che il dispositivo non può attivare un segnale di riattivazione o la struttura WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS contiene uno stato di alimentazione del dispositivo non valido.
 

Il metodo potrebbe restituire altri valori NTSTATUS .

Se il driver fornisce un handle di oggetto non valido, si verifica un controllo di bug.

Osservazioni

Per altre informazioni, vedere di riattivazione del sistema di supporto.

Esempi

L'esempio di codice seguente inizializza una struttura WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS e quindi chiama WdfDeviceAssignSxWakeSettings. Nell'esempio vengono utilizzate le impostazioni predefinite impostate WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS_INIT.

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;
}

Fabbisogno

Requisito Valore
piattaforma di destinazione Universale
versione minima di KMDF 1.0
versione minima di UMDF 2.0
intestazione wdfdevice.h (include Wdf.h)
libreria Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)
IRQL <= DISPATCH_LEVEL
regole di conformità DDI DriverCreate(kmdf), FDOPowerPolicyOwnerAPI(kmdf), KmdfIrql(kmdf), KmdfIrql2(kmdf), KmdfIrqlExplicit(kmdf), NonFDONotPowerPolicyOwnerAPI(kmdf)

Vedere anche

WDF_DEVICE_POWER_POLICY_WAKE_SETTINGS

WdfDeviceAssignS0IdleSettings