Funzione PowerSetRequest (winbase.h)

Incrementa il numero di richieste di alimentazione del tipo specificato per un oggetto power request.

Sintassi

BOOL PowerSetRequest(
  [in] HANDLE             PowerRequest,
  [in] POWER_REQUEST_TYPE RequestType
);

Parametri

[in] PowerRequest

Handle per un oggetto power request.

[in] RequestType

Tipo di richiesta di alimentazione da incrementare. Questo parametro può avere uno dei valori seguenti.

Valore Descrizione
PowerRequestDisplayRequired La visualizzazione rimane attiva anche se non è presente alcun input utente per un periodo di tempo esteso.

Nota: Un PowerRequestSystemRequired deve essere eseguito oltre a un PowerRequestDisplayRequired per garantire che la visualizzazione rimanga attiva e il sistema non entri in sospensione per la durata della richiesta.
PowerRequestSystemRequired Il sistema continua a essere eseguito invece di entrare in sospensione dopo un periodo di inattività dell'utente.
PowerRequestAwayModeRequired Il sistema entra in modalità inattiva invece di dormire in risposta all'azione esplicita dall'utente. In modalità di distanza, il sistema continua a funzionare, ma disattiva l'audio e il video per dare l'aspetto del sonno. PowerRequestAwayModeRequired è applicabile solo nei sistemi di sospensione tradizionale (S3).
PowerRequestExecutionRequired Il processo chiamante continua a essere eseguito anziché essere sospeso o terminato dai meccanismi di gestione della durata del processo. Quando e la durata dell'esecuzione del processo dipende dalle impostazioni del sistema operativo e dei criteri di alimentazione.

Nei sistemi Di sospensione tradizionale (S3), una richiesta PowerRequestExecutionRequired attiva implica PowerRequestSystemRequired.

Valore restituito

Se la funzione ha esito positivo, restituisce un valore diverso da zero.

Se la funzione ha esito negativo, restituisce zero. Per informazioni dettagliate sull'errore, chiamare GetLastError.

Commenti

Nei sistemi di standby moderni in alimentazione DC, le richieste di alimentazione di sistema ed esecuzione necessarie vengono terminate 5 minuti dopo la scadenza del timeout di sospensione del sistema.

Ad eccezione di PowerRequestAwayModeRequired nei sistemi Di sospensione tradizionale (S3), le richieste di alimentazione vengono interrotte dopo la voce di sospensione del sistema avviata dall'utente (pulsante di alimentazione, chiusura del coperchio o selezione Sospensione dal menu Start ).

Per risparmiare energia e offrire la migliore esperienza utente, le applicazioni che usano richieste di alimentazione devono seguire queste procedure consigliate:

  • Quando si crea una richiesta di alimentazione, specificare una stringa di testo localizzata che descrive il motivo della richiesta nella struttura REASON_CONTEXT .
  • Chiamare PowerSetRequest immediatamente prima dello scenario che richiede la richiesta.
  • Chiamare PowerClearRequest per decrerere il conteggio dei riferimenti per la richiesta non appena viene completato lo scenario.
  • Pulire tutti gli oggetti richiesta e gli handle associati prima dell'uscita dal processo o l'arresto del servizio.

Requisiti

   
Client minimo supportato Windows 7 [solo app desktop]
Server minimo supportato Windows Server 2008 R2 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione winbase.h (include Windows.h)
Libreria Kernel32.lib
DLL Kernel32.dll

Vedere anche

PowerClearRequest

PowerCreateRequest