일정 시간이 지나면 컴퓨터를 절전 모드로 만드는 배치 파일을 만들고 싶습니다.
내가 찾은 가장 가까운 것은 대기 모드에 있지만 키보드의 절전 버튼과 다르게 작동하는 것 같습니다 (더 긴 부팅은 마우스 클릭으로 깨어나지 않습니다). 어떤 아이디어? 파이썬이나 C #에서 더 쉬울까요?
위에서 언급 한 덜 이상적인 기술은 cmd 프롬프트에서 이것을 호출하는 것입니다.
Rundll32.exe powrprof.dll,SetSuspendState
일정 시간이 지나면 컴퓨터를 절전 모드로 만드는 배치 파일을 만들고 싶습니다.
내가 찾은 가장 가까운 것은 대기 모드에 있지만 키보드의 절전 버튼과 다르게 작동하는 것 같습니다 (더 긴 부팅은 마우스 클릭으로 깨어나지 않습니다). 어떤 아이디어? 파이썬이나 C #에서 더 쉬울까요?
위에서 언급 한 덜 이상적인 기술은 cmd 프롬프트에서 이것을 호출하는 것입니다.
Rundll32.exe powrprof.dll,SetSuspendState
답변:
단순히 명령
rundll32.exe powrprof.dll,SetSuspendState
시스템은 최대 절전 모드 를 수행하지만이를 작성하면 :
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
그리고 켜고 끌 명령으로 최대 절전 모드 :
powercfg -hibernate off
이제 시스템이 절전 모드로 전환되고 장치를 선택한 경우 마우스 이동시 깨어납니다 (방법을 알아 보려면 아래로 스크롤).
타이머 배치 :
timeout /t 1200
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
여기서 1200 은 초입니다. 20 분 후에 배치가 휴면 명령을 실행합니다.
선택적으로 카운트 다운 취소를 방지 할 수 있습니다 (배치 창에서 아무 키나 누르면).
timeout /t 1200 /nobreak
rundll32.exe powrprof.dll,SetSuspendState 0,1,0
마우스로 깨우는 방법에 대한 작은 하우투 :
로 이동 : 시작 -> 제어판 -> 마우스.
마우스 속성 창에서 하드웨어 탭을 클릭하고 장치 목록에서 마우스를 선택하십시오. 일반적으로 여기에 하나의 마우스 만 나열되지만 컴퓨터에 연결된 하드웨어에 따라 다릅니다. 목록에서 마우스를 선택했으면 속성 버튼을 클릭하십시오 .
이제 마우스 의 속성 창 에서 일반 탭의 설정 변경 버튼을 클릭 하십시오.
열린 창에서 전원 관리 탭을 클릭 하고이 장치가 컴퓨터를 깨우도록 허용 옵션을 선택하십시오 . 클릭 OK의 이 창에 버튼을하고 클릭 OK 온 버튼을 마우스 등록 열려있는 창. 이제 마우스 버튼을 클릭하거나 마우스를 움직여 Windows 7을 절전 모드에서 깨울 수 있습니다.
작업 솔루션! 적절한 수면을 허용
하기 위해 PsShutdown
유틸리티 를 사용해야했습니다 (1 차 문제는 SetSuspendState
웨이크 타이머가 기계를 깨울 수 없다는 것입니다). 잠자기 할 배치 파일은 1 줄입니다.
PsShutdown -d -t 2
구조에 .NET. 이 솔루션은 PC 구성을 변경하지 않고도 컴퓨터를 절전 모드로 전환합니다 (최대 절전 모드 해제). 이 명령을 일괄 적으로 실행하십시오.
powershell.exe -command "Add-Type -AssemblyName System.Windows.Forms; [System.Windows.Forms.Application]::SetSuspendState([System.Windows.Forms.PowerState]::Suspend, $false, $false)"
::Suspend
수면 또는 ::Hibernate
(다른 답변의 작동 방식)으로 사용할 수 있습니다 . SetSuspendState에 대한 설명서 .
으로 System.Windows.Forms
네임 스페이스 (는 파워 쉘 ISE에서 수행) 기본적으로로드되지 않습니다, 당신은 처음에는 그것을 위해 어셈블리를로드해야합니다.
Hiberanate를 비활성화하지 않도록 SetSystemPowerState를 시도 할 수 있습니다.
rundll32.exe kernel32.dll, SetSystemPowerState
1,0 또는 1 0을 추가하거나 Rundll32.exe powrprof.dll, SetSuspendState 0 0 1 또는 Rundll32.exe powrprof.dll, SetSuspendState 0,0,1을 수행하면 인수 (0,0,1)은 NOTHING을 의미합니다.
powrprof.dll, SetSuspendState는 rundll32 스타일 인수를 구문 분석하지 않으므로 무시합니다. 따라서 최대 절전 모드를 비활성화해야합니다.
이 질문은 이미 답변되었습니다.
powercfg -h 끄기 및 / min ""C : \ WINDOWS \ System32 \ rundll32.exe PowrProf.dll, SetSuspendState 0,1,0 & ping -n 3 127.0.0.1> nul & powercfg -h 켜기 및 종료
다음을 참조하십시오.