Próbuję zbudować program, który umożliwia wyłączenie lub wysłanie komputera do trybu uśpienia po upływie określonego czasu.
Nie miałem problemu z wyłączeniem komputera, ale mam trudności z wysłaniem go w tryb uśpienia (na przykład po 60 minutach)
Mam polecenie wysłania komputera w tryb uśpienia, ale mam trudności z ustawieniem czasu, w którym program czeka, zanim to nastąpi:
powercfg -h off & start / min "" C: \ WINDOWS \ System32 \ rundll32.exe PowrProf.dll, SetSuspendState 0,1,0 & ping -n 3 127.0.0.1> nul i powercfg -h on & exit
Proszę wskazać mi właściwy kierunek.
command-line
sleep
cmd.exe
Deszyfruj3d
źródło
źródło
Odpowiedzi:
Twoje pytanie ma niewiele wspólnego z pythonem, ponieważ polecenie, które wydałeś w wierszu poleceń systemu Windows, w tym prowizoryczny zegar. Patrząc na pokazany kod, to tylko kilka poleceń wiersza poleceń połączonych z &. . .
Podział tego polecenia powoduje:
powercfg -h off
: wyłącza hibernacjęstart /min "" C:\WINDOWS\System32\rundll32.exe PowrProf.dll,SetSuspendState 0,1,0
- Nie jestem w 100% tego pewien: uśpienie komputeraping -n 3 127.0.0.1 > nul
: jest to typowy hack z timerem dla systemu Windows, który zasadniczo wprowadza 3-sekundowe opóźnienie; Domyślam się, że ma to na celu rozwiązanie niektórych problemów z synchronizacją, gdy system budzi się ze snu, ponieważ to polecenie nie uruchomi się, dopóki się nie obudziszpowercfg -h on
: ponownie włącza hibernacjęexit
: wychodzi z pliku wsadowego.Więc nie ma tutaj opóźnienia. . . aby dodać opóźnienie w pythonie, możesz użyć funkcji uśpienia modułu czasu . Przykładowy kod mógłby wyglądać następująco:
źródło