Wiem, że prawie wszystko w systemie Windows, takie jak otwieranie dowolnej aplikacji, można wykonać z wiersza polecenia lub z menu Uruchom .
Jak mogę uśpić komputer lub go wyłączyć ? Jakie jest na to polecenie?
Wiem, że prawie wszystko w systemie Windows, takie jak otwieranie dowolnej aplikacji, można wykonać z wiersza polecenia lub z menu Uruchom .
Jak mogę uśpić komputer lub go wyłączyć ? Jakie jest na to polecenie?
Odpowiedzi:
Przekonasz
shutdown.exe
się, że jesteś swoim przyjacielem.Inne przydatne polecenia zobacz ten post:
Sleep Computer (czytaj więcej na https://superuser.com/a/463652/249349 )
Zablokuj stację roboczą
Hibernacja Komputer
Restart komputera
Wyłącz komputer
EDYCJA / AKTUALIZACJA:
Wygląda na to, że spanie przy komputerze jest problematyczne, jeśli hibernacja jest włączona.
Kopiowanie z innych odpowiedzi:
Możesz wypróbować PsShutdown lub:
źródło
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
polega na tym, że TO NIE DZIAŁA tak, jak powinno.SetSuspendState
wprowadzi komputer w rodzaj hybrydowego trybu uśpienia / hibernacji. Gdy używasz przycisku Uśpij z menu Start, możesz wznowić komputer ze stanu uśpienia, naciskając dowolny klawisz na klawiaturze. Za pomocą tego wiersza polecenia program make jest wznawiany znacznie wolniej z powodu głębszego stanu uśpienia i można go wznowić tylko po naciśnięciu przycisku zasilania na komputerze. Nie można wznowić naciśnięcia klawisza. Więc ... jak sprawić, byś spał jak w normalnym trybie gotowości - można go wznowić po naciśnięciu klawisza?rundll32
nie powinien być używany do dzwonienia,SetSuspendState
ponieważ jego podpis nie pasuje do tego, którego oczekujerundll32
. Patrz: support.microsoft.com/en-us/kb/164787 i msdn.microsoft.com/en-us/library/windows/desktop/… Pierwszy parametr otrzymuje śmieci zamiast wartości FAŁSZ. To jest powód, dla którego hibernuje zamiast iść spać.Metody opublikowane przez inne osoby nie działają poprawnie, jeśli komputer ma włączoną hibernację, komputer nie obudzi się na klawiaturze lub, co ważniejsze, nie obudzi się w zaplanowanym zadaniu.
Jednym z narzędzi Sysinternals Microsoftu jest PsShutdown przy użyciu polecenia
psshutdown -d -t 0
, aby poprawnie spał, a nie hibernował komputerźródło
run as administrator
opcji kliknięcia prawym przyciskiempsshutdown.exe
z archiwum np.C:\Windows\System32
Aby móc użyć polecenia bez prefiksu ścieżki. Następnie należy wykonaćpsshutdown -d -t 0
z uprawnieniami administratora w celu zawieszenia. To powinna być zaakceptowana odpowiedź , ponieważ odpowiada na pytanie, nawet jeśli nie jest to z narzędziami z preinstalowanym systemem Windows.Polecenie
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
uśpienia jest poprawne - jednak zamiast hibernacji przejdzie w stan hibernacji zamiast uśpienia.Oto jak to zrobić:
Przejdź do menu Start i otwórz wiersz polecenia z podwyższonym poziomem
cmd.exe
uprawnień, wpisując , klikając prawym przyciskiem myszy i wybierając Uruchom jako administrator . Wpisz następujące polecenie:źródło
powrprof.dll
gdy hibernacja jest włączona? Po prostu chcę wiedzieć. Czy odnosi się do któregokolwiek z stanów ACPI?rundll32
nie powinien być używany do dzwonienia,SetSuspendState
ponieważ jego podpis nie pasuje do tego, którego oczekujerundll32
. Patrz: support.microsoft.com/en-us/kb/164787 i msdn.microsoft.com/en-us/library/windows/desktop/… Pierwszy parametr otrzymuje śmieci zamiast FAŁSZ. To jest powód, dla którego hibernuje zamiast iść spać.NirCmd działa w systemie Windows 8 (zakładam, że działa również z Windows 7) → http://www.nirsoft.net/utils/nircmd.html
Polecenie jest
standby
, ale powoduje uśpienie komputera.Jeśli masz włączony tryb hybrydowy, będzie działał; oznacza to, że komputer przechodzi w tryb uśpienia i kopiuje pamięć na dysk w przypadku utraty zasilania.
źródło
Zobacz bezpłatne narzędzie Wizmo , które potrafi wiele rzeczy.
Polecenie, którego szukasz, to prawdopodobnie:
źródło
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
- wprowadza komputer w stan hibernacji, a nie w senUtworzyłem skrót do
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
(próbowałem również z 0,0,0), ale uruchomienie skrótu sprawiło, że mój komputer przeszedł w stan hibernacji. Nie mogłem obudzić komputera za pomocą klawiatury; Musiałem nacisnąć przycisk zasilania, a komputer pokazał wiadomości na płycie głównej itp.Po przeczytaniu dokumentu API systemu Windows stworzyłem bardzo prosty program z zaledwie 3 wierszami pisania. Przesłałem plik wykonywalny skompilowany na tę stronę (kliknij plik „SleepTest.exe”) , ale ten plik może zostać po pewnym czasie usunięty (jest to darmowa witryna hostingowa plików, którą właśnie znalazłem przez szybkie wyszukiwanie w Google).
Jeśli mi nie ufasz (co jest całkowicie w porządku) lub plik został usunięty, możesz samodzielnie skompilować kod. Musisz dodać „PowrProf.lib” do dodatkowych zależności Linkera.
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
wydaje się, że robi to samo, ale jakoś powyższy program nie wprowadził komputera w stan hibernacji. Mogłem natychmiast obudzić komputer (bez wiadomości na płycie głównej itp.), Naciskając dowolny klawisz na klawiaturze.źródło
Możesz zainicjować opcje zawieszenia lub hibernacji z wiersza poleceń, jak określono poniżej i do którego odwołuje się ten artykuł .
Jeśli komputer jest ustawiony na zezwalanie na hibernację, powyższe polecenie zainicjuje hibernację. Jeśli funkcja hibernacji jest wyłączona, przejdzie w stan gotowości. Jak inni użytkownicy odpowiedzieli wcześniej,
shutdown.exe /?
zapewni wiele opcji zamykania.źródło
rundll32
nie powinien być używany do dzwonienia,SetSuspendState
ponieważ jego podpis nie pasuje do tego, którego oczekujerundll32
. Zobacz: support.microsoft.com/en-us/kb/164787 i msdn.microsoft.com/en-us/library/windows/desktop/… Pierwszy parametr otrzymuje śmieci zamiast FAŁSZ, więc zawsze hibernuje zamiast przechodzić do spać.Musisz najpierw wyłączyć hibernację w systemie Windows, a następnie przełączyć komputer w stan uśpienia . Użyj następujących dwóch poleceń:
i do wykonania akcji odwrotnej, hibernacji komputera, użyj poniższych poleceń:
źródło
rundll32
nie jest przeznaczony do dzwonieniaSetSuspendState
i nie powinien być do tego wykorzystywany. Pierwszy parametr otrzymuje śmieci zamiast poprawnej wartości. Więc zawsze hibernuje zamiast iść spać (jeśli w ogóle nie wyłączyłeś hibernacji).Oto artykuł na temat używania CLI do zamykania systemu.
Microsoft zapewnia PsTools, który zapewnia zamknięcie CLI wraz z innymi przydatnymi narzędziami. Możesz to uzyskać tutaj .
źródło
działa dla mnie tylko QUICK SLEEPER (działa w systemie Windows 7,8,10).
kod źródłowy ps dostępny tutaj .
źródło
Jeśli masz dostępny Python (z pywin32), możesz również wywołać tę funkcję SetSuspendState bezpośrednio za pomocą:
Można to łatwo umieścić w pliku wsadowym lub w skrócie:
Jeśli więc nie masz powiązanych plików interpretera z plikami .py, możesz kliknąć dwukrotnie łącze.
źródło
Część zamykająca pytanie jest jasna dla wszystkich.
shutdown.exe /?
pokazuje wszystkie opcje wyłączenia / restartu / opcji zaawansowanych rozruchu / rozruchu oprogramowania układowego.Ale widzę tyle bełkotu wokół części Sen.
Każdy dostaje to,
rundll32.exe
czego nie należy używać do wywoływania funkcji losowych, i działa tutaj tylko w przypadku hibernacji całkowicie przez przypadek. Ale taka jest natura systemu Windows - czarna skrzynka, którą ludzie przeszukali i znaleźli setki obejść, aby wykonać zadanie (krzyczeć, aby dostips).Jest tak wiele „ właściwych ” rozwiązań proponujących narzędzia zewnętrzne , ale nie mogę znaleźć natywnego (hybrydowego / pinvoke / cokolwiek) skryptu wsadowego , nawet jeśli to pytanie pozostało aktywne przez lata.
Oto mój prosty power_sleep.bat :
Działa nawet jako duże jedno-wierszowe polecenie:
źródło