모든 종류의 응용 프로그램 열기와 같은 Windows의 거의 모든 것이 명령 프롬프트 또는 실행 메뉴 에서 수행 할 수 있다는 것을 알고 있습니다.
컴퓨터를 잠자 게 하거나 종료 하려면 어떻게 해야 합니까? 그 명령은 무엇입니까?
모든 종류의 응용 프로그램 열기와 같은 Windows의 거의 모든 것이 명령 프롬프트 또는 실행 메뉴 에서 수행 할 수 있다는 것을 알고 있습니다.
컴퓨터를 잠자 게 하거나 종료 하려면 어떻게 해야 합니까? 그 명령은 무엇입니까?
답변:
당신은 shutdown.exe
당신의 친구가 될 것입니다.
다른 편리한 명령은 이 게시물을 참조하십시오 :
수면 컴퓨터 ( https://superuser.com/a/463652/249349 에서 자세히 알아보십시오 )
워크 스테이션 잠금
동면 컴퓨터
see answers by Scott Chamberlain and Eric L
컴퓨터 재시작
Shutdown.exe -r -t 00
컴퓨터 종료
Shutdown.exe -s -t 00
편집 / 업데이트 :
최대 절전 모드가 켜져 있으면 컴퓨터의 절전 모드에 문제가있는 것 같습니다.
다른 답변에서 복사 :
PsShutdown을 시도 하거나 다음을 수행 할 수 있습니다 .
절전 모드에 대한 rundll32.exe powrprof.dll, SetSuspendState 0,1,0 명령은 정확하지만 최대 절전 모드를 해제하지 않으면 절전 모드 대신 최대 절전 모드가됩니다.
이를 수행하는 방법은 다음과 같습니다.
시작 메뉴로 이동하여 cmd.exe를 입력하고 마우스 오른쪽 단추를 클릭 한 후 관리자 권한으로 실행을 선택하여 관리자 권한 명령 프롬프트를 엽니 다. 다음 명령을 입력하십시오 :
powercfg -hibernate off
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
는 IT가 제대로 작동하지 않는다는 것입니다. SetSuspendState
컴퓨터를 일종의 하이브리드 절전 / 최대 절전 모드로 전환합니다. 시작 메뉴에서 잠자기 단추를 사용하면 키보드의 아무 키나 눌러 컴퓨터를 잠자기에서 다시 시작할 수 있습니다. 이 명령 줄을 사용하면 더 깊은 절전 상태로 인해 재개가 훨씬 느려지고 컴퓨터의 전원 버튼을 눌러야 재개 할 수 있습니다. 키를 눌러도 다시 시작할 수 없습니다. 그렇다면 ... 키를 누르면 정상 대기 모드에서와 같이 어떻게 절전 모드로 전환합니까?
rundll32
SetSuspendState
서명이에 필요한 서명과 일치하지 않으므로 호출에 사용하면 안됩니다 rundll32
. support.microsoft.com/en-us/kb/164787 및 msdn.microsoft.com/en-us/library/windows/desktop/…을 참조하십시오. 첫 번째 매개 변수는 FALSE 값 대신 가비지를 가져옵니다. 이것이 왜 잠들지 않고 동면하는 이유입니다.
컴퓨터에서 최대 절전 모드를 사용하도록 설정 한 경우 컴퓨터가 키보드에서 깨어나지 않거나 예약 된 작업에서 깨어나지 않으면 다른 사람이 게시 한 방법이 제대로 작동하지 않습니다.
Microsoft의 Sysinternals 도구 중 하나 는 컴퓨터가 최대 절전 모드가 아니라 올바르게 절전 모드로 전환 되는 명령을 사용하는 PsShutdown입니다.psshutdown -d -t 0
run as administrator
마우스 오른쪽 버튼으로 클릭 옵션
psshutdown.exe
에서 복사 해야합니다 C:\Windows\System32
. 그런 다음 psshutdown -d -t 0
일시 중지하려면 관리자 권한 으로 실행해야합니다 . 이것은 대답이되어야하며 Windows에 사전 설치된 도구가 없어도 질문에 대답해야합니다 .
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
절전 명령 은 정확하지만 최대 절전 모드를 끄지 않으면 절전 모드 대신 최대 절전 모드가됩니다.
이를 수행하는 방법은 다음과 같습니다.
시작 메뉴로 이동 한 다음 cmd.exe
마우스 오른쪽 버튼을 클릭하고 관리자 권한으로 실행을 선택하여 관리자 권한 명령 프롬프트를 엽니 다 . 다음 명령을 입력하십시오.
powercfg -hibernate off
powrprof.dll
최대 절전 모드가 켜져있을 때 하이브리드 절전 / 일시 중지 상태의 이름 이 있습니까? 알고 싶어 ACPI 상태와 관련이 있습니까?
rundll32
SetSuspendState
서명이에 필요한 서명과 일치하지 않으므로 호출에 사용하면 안됩니다 rundll32
. support.microsoft.com/en-us/kb/164787 및 msdn.microsoft.com/en-us/library/windows/desktop/…을 참조하십시오. 첫 번째 매개 변수는 FALSE 대신 가비지를 가져옵니다. 이것이 왜 잠들지 않고 동면하는 이유입니다.
NirCmd는 Windows 8에서 작동합니다 (Windows 7에서도 작동한다고 가정) → http://www.nirsoft.net/utils/nircmd.html
이 명령은 standby
입니다.
nircmd.exe standby
하이브리드 절전 모드가 활성화되어 있으면 작동합니다. 즉, 정전시 컴퓨터를 절전 모드로 전환하고 메모리를 디스크에 복사합니다.
많은 일을 할 수있는 Wizmo 의 무료 유틸리티를 참조하십시오 .
찾고있는 명령은 아마도 다음과 같습니다.
위즈 모 대기
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
컴퓨터가 최대 절전 모드로 전환되고 절전 모드가 아닌 것과 동일한 문제가 있습니다.
나는 바로 가기 생성 한 rundll32.exe powrprof.dll,SetSuspendState 0,1,0
(또한 0, 0, 0과 노력을), 그러나 바로 가기를 실행하는 최대 절전 모드로 내 PC를 보였다. 키보드를 사용하여 PC를 깨울 수 없습니다. 전원 버튼을 눌러야했고 PC에는 메인 보드 게시물 메시지 등이 표시되었습니다.
Windows API 문서를 읽은 후 3 줄만 입력하면 매우 간단한 프로그램을 만들었습니다. 이 페이지에 컴파일 한 실행 파일을 업로드했지만 ( "SleepTest.exe"클릭) 잠시 후에이 파일을 삭제할 수 있습니다 (이것은 빠른 Google 검색에서 찾은 무료 파일 호스팅 사이트입니다).
나를 믿지 않거나 (완전히 괜찮습니다) 파일이 삭제 된 경우 물론 코드를 직접 컴파일 할 수 있습니다. 링커의 추가 종속성에 "PowrProf.lib"를 추가해야합니다.
#include "stdafx.h"
#include "windows.h" <-- Added this to make it work on Windows.
#include "PowrProf.h" <-- Added this to use the sleep function.
int main()
{
SetSuspendState(FALSE, FALSE, FALSE); <-- Added this actual call.
return 0;
}
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
같은 일을하는 것처럼 보이지만 어쨌든 위의 프로그램은 컴퓨터를 최대 절전 모드로 전환하지 않았습니다. 키보드의 아무 키나 눌러 PC를 즉시 깨울 수 있습니다 (메인 보드 게시물 메시지 등 없음).
아래에 지정되고이 기사 에서 참조 된대로 명령 행에서 일시 중단 또는 최대 절전 모드 옵션을 시작할 수 있습니다 .
%windir%\System32\rundll32.exe powrprof.dll,SetSuspendState
컴퓨터가 최대 절전 모드로 설정되어 있으면 위의 명령이 최대 절전 모드를 시작합니다. 최대 절전 모드 기능이 비활성화되면 대기 상태가됩니다. 다른 사용자가 이전에 답변했듯이 shutdown.exe /?
많은 종료 옵션을 제공합니다.
rundll32
SetSuspendState
서명이에 필요한 서명과 일치하지 않으므로 호출에 사용하면 안됩니다 rundll32
. support.microsoft.com/en-us/kb/164787 및 msdn.microsoft.com/en-us/library/windows/desktop/…을 참조하십시오. 첫 번째 매개 변수는 FALSE 대신 가비지를 가져 오므로 항상 대신 최대 절전 모드로 전환합니다. 자다.
먼저 Windows에서 최대 절전 모드를 해제 한 다음 컴퓨터를 절전 상태 로 두어야합니다 . 다음 두 명령을 사용하십시오.
powercfg -hibernate off
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
와, 역 동작을 수행하기위한 최대 절전 모드 컴퓨터를 사용 아래 명령 :
powercfg -hibernate on
rundll32.exe powrprof.dll,SetSuspendState Hibernate
rundll32
전화 SetSuspendState
용이 아니며이를 위해 사용해서는 안됩니다. 첫 번째 매개 변수는 올바른 값 대신 가비지를 가져옵니다. 따라서 최대 절전 모드를 해제하지 않은 경우 항상 절전 모드로 전환되지 않고 최대 절전 모드로 전환됩니다.
Python (pywin32 포함)을 사용할 수있는 경우 다음을 사용하여 해당 SetSuspendState 함수를 직접 호출 할 수도 있습니다.
import ctypes
ctypes.windll.PowrProf.SetSuspendState(0, 1, 0)
이것은 배치 파일이나 바로 가기 정렬에 쉽게 넣을 수 있습니다.
pythonw -c "import ctypes; ctypes.windll.PowrProf.SetSuspendState(0, 1, 0)"
따라서 인터프리터와 연결된 .py 파일이없는 경우 링크를 두 번 클릭하면됩니다.
질문의 종료 부분은 모두에게 분명합니다.
shutdown.exe /?
종료 / 재시작 / 고급 옵션 부팅 / 펌웨어 부팅에 대한 모든 선택 사항을 보여줍니다.
그러나 나는 수면 부분에 대해 너무 많은 똥이 던지는 것을 봅니다.
모든 사람이 rundll32.exe
임의의 함수를 호출하는 데 사용해서는 안되는 것을 얻었 으며 우연의 일치로 최대 절전 모드에서 작동합니다. 그러나 이것이 Windows의 본질입니다. 사람들이 찌르고 작업을 수행하기위한 수백 가지 해결 방법을 발견 한 블랙 박스입니다.
외부 도구를 제안하는 " 적절한 "솔루션 이 너무 많지만 이 질문이 몇 년 동안 계속 남아 있어도 네이티브 (하이브리드 / 핀 호출 / 어떤) 배치 스크립트 도 찾을 수없는 것 같습니다 .
다음은 간단한 power_sleep.bat입니다 .
@echo off &mode 32,2 &color cf &title Power Sleep
set "s1=$m='[DllImport ("Powrprof.dll", SetLastError = true)]"
set "s2=static extern bool SetSuspendState(bool hibernate, bool forceCritical, bool disableWakeEvent);"
set "s3=public static void PowerSleep(){ SetSuspendState(false, false, false); }';"
set "s4=add-type -name Import -member $m -namespace Dll; [Dll.Import]::PowerSleep();"
set "ps_powersleep=%s1%%s2%%s3%%s4%"
call powershell.exe -NoProfile -NonInteractive -NoLogo -ExecutionPolicy Bypass -Command "%ps_powersleep:"=\"%"
exit
큰 한 줄 명령으로도 작동합니다.
powershell.exe -C "$m='[DllImport(\"Powrprof.dll\",SetLastError=true)]static extern bool SetSuspendState(bool hibernate,bool forceCritical,bool disableWakeEvent);public static void PowerSleep(){SetSuspendState(false,false,false); }';add-type -name Import -member $m -namespace Dll; [Dll.Import]::PowerSleep();"