2010-01-17 14 views
24

Chcę ustawić system w tryb uśpienia lub hibernacji, dwie różne opcje.C# Włóż komputer do trybu uśpienia lub hibernacji

W jaki sposób mogę to zrobić za pomocą API, naprawdę nie chcę używać procesu, a to nie pozwala mi wybrać jakiej metody chcę dla tej akcji. System

+0

można znaleźć wszystkie potrzebne informacje, w tym [LINK] (http://www.geekpedia.com/tutorial177_Lock-Stand-By -Hibernate-and-Log-Off.html) do blokowania komputera, trybu gotowości, hibernacji i wylogowania. – Alex

+0

Dzięki, potrzebowałem również kodu blokady PC. –

Odpowiedz

48
// Hibernate 
Application.SetSuspendState(PowerState.Hibernate, true, true); 
// Standby 
Application.SetSuspendState(PowerState.Suspend, true, true); 

Albo, jeśli chcesz wzywa:

[DllImport("Powrprof.dll", CharSet=CharSet.Auto, ExactSpelling=true)] 
public static extern bool SetSuspendState(bool hiberate, bool forceCritical, bool disableWakeEvent); 

// Hibernate 
SetSuspendState(true, true, true); 
// Standby 
SetSuspendState(false, true, true); 
+0

Dzięki, bardzo pouczające i pomocne. –

+4

Jak to zrobić w Windows 8? –

+0

@ fre0n Nie uruchamia zdarzenia PowerModeChanged, gdy system został wywołany. – prabhakaran

Powiązane problemy