Freigeben über


SetSystemPowerState-Funktion (winbase.h)

[SetSystemPowerState ist für die Verwendung in den im Abschnitt Anforderungen angegebenen Betriebssystemen verfügbar. Es kann in nachfolgenden Versionen geändert oder entfernt werden. Anwendungen, die für Windows Vista und höher geschrieben wurden, sollten stattdessen SetSuspendState verwenden.]

Hält das System an, indem die Stromversorgung heruntergefahren wird. Abhängig vom ForceFlag-Parameter hält die Funktion den Vorgang entweder sofort an oder fordert die Berechtigung von allen Anwendungen und Gerätetreibern an, bevor dies geschieht.

Syntax

BOOL SetSystemPowerState(
  [in] BOOL fSuspend,
  [in] BOOL fForce
);

Parameter

[in] fSuspend

Wenn dieser Parameter TRUE ist, wird das System angehalten. Wenn der Parameter FALSE ist, wird das System in den Ruhezustand versetzt.

[in] fForce

Dieser Parameter hat keine Auswirkungen.

Rückgabewert

Wenn die Stromversorgung angehalten und anschließend wiederhergestellt wurde, ist der Rückgabewert ungleich null.

Wenn das System nicht angehalten wurde, ist der Rückgabewert null. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.

Hinweise

Der aufrufende Prozess muss über die berechtigung SE_SHUTDOWN_NAME verfügen. Verwenden Sie die Funktion AdjustTokenPrivileges, um die Berechtigung SE_SHUTDOWN_NAME zu aktivieren. Weitere Informationen finden Sie unter Ändern von Berechtigungen in einem Token.

Wenn eine Anwendung oder ein Treiber die Berechtigung zum Anhalten des Vorgangs verweigert, überträgt die Funktion ein PBT_APMQUERYSUSPENDFAILED-Ereignis an jede Anwendung und jeden Treiber. Wenn die Stromversorgung angehalten wird, wird diese Funktion erst zurückgegeben, nachdem der Systembetrieb fortgesetzt wurde und zugehörigen WM_POWERBROADCAST Nachrichten an alle Anwendungen und Treiber gesendet wurden.

Diese Funktion ähnelt der SetSuspendState-Funktion .

Um eine Anwendung zu kompilieren, die diese Funktion verwendet, definieren Sie das makro _WIN32_WINNT als 0x0400 oder höher. Weitere Informationen finden Sie unter Verwenden der Windows-Header.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile winbase.h (Windows.h einschließen)
Bibliothek Kernel32.lib
DLL Kernel32.dll

Siehe auch

PBT_APMQUERYSUSPEND

PBT_APMQUERYSUSPENDFAILED

PBT_APMSUSPEND

Energieverwaltungsfunktionen

SetSuspendState

WM_POWERBROADCAST