Mettere il pc in sospensione in C#
Ho trovato un utile metodo in C# che ci permette di mettere il pc in standby o in ibernazione.
Può essere utile da richiamare dopo avere lanciato procedure lunghe (cosa che mi è capitata a me tempo fa).
Il metodo si chiama SetSuspendState ed accetta tre parametri:
- PowerState -> il tipo di operazione da eseguire
- force -> valore booleano che indica se forzare l'operazione (true), oppure mandare prima un messaggio a tutte le applicazioni aperte (false, che sarebbe più sicuro)
- disableWakeEvent -> altro valore booleano che indica se accettare eventi che possano riattivare il pc; false indica che questi eventi non sono accettati
Vediamo un esempio:
Application.SetSuspendState(PowerState.Suspend, false, false);
In questo caso lo mettiamo in standby / sospensione, aspettando che tutte le applicazioni si chiudano, e non accettando eventi esterni.
Oppure:
Application.SetSuspendState(PowerState.Hibernate, false, true);
Lo iberniamo e diamo la possibilità di risveglio ad eventi esterni.
Enjoy!
c# setsuspendstate powerstate standby ibernazione
Commentami!