2012-05-27 5 views
0

어떻게하면 Windows의 상태를 제어 할 수 있습니까? 그물에? 특히 시스템이 잠자기 상태가되지 않도록하는 방법에 관심이 있습니다 (사용자가 오랫동안 입력 장치를 사용하지 않은 경우). 시스템이 대기 모드, 절전 모드 또는 최대 절전 모드로 전환 될 때 이벤트를 추적하고 런타임에이를 취소 할 수 있습니까? .Net에 적용 가능한 모든 정보가 유용 할 것입니다..net에서 Windows의 상태를 어떻게 제어 할 수 있습니까?

미리 감사드립니다.

+1

여기를보세요. http://stackoverflow.com/questions/10052402/preventing-computer-from-sleeping – Adam

+0

@Adam, 오, 감사합니다. 대기 모드, 절전 모드 또는 최대 절전 모드로 들어가기위한 시스템 시도에 반응하는 방법에 더 관심이 있으며, 특정 조건에서 취소 할 수도 있습니다 (아마도 사용자 입력을 시뮬레이션 할 수 있습니다). 시스템 종료 시도를 추적하는 방법을 알고 있습니까? –

+0

님이 답변을 추가했습니다. 도움이되기를 바랍니다. – Adam

답변

1

WMI, Windows Management Instrumentation에 대해 조사하십시오.

WMI는 Windows 운영 체제를 강력하게 제어하고 이벤트 시스템을 갖추고 있으며 .NET 인터페이스를 제공하기 때문에 문제가됩니다.

실제로 WMI에서는 WMI interface을 사용하여 .NET 응용 프로그램에 시스템 전원 이벤트에 대한 알림 (this WMI class)을 허용합니다.

물론 시스템 대기를 허용하거나 허용하지 않기 위해 Adam 주석 link을 고려해야합니다.

+0

왜 이것을 다운 그레이드 했습니까? – jalf

+1

@ jalf 나는 똑같은 것을 궁금해하고 있었다. – Adam

+0

내 첫 번째 대답은 첫 번째 줄로만 구성되었지만 (내 의견으로는 답변 노력이 질문 노력을 보완한다), 그러나 downvoter는 똑같지 않았다. – Luca

0

WinForms에서 종료를 감지 할 수 있습니다. FormClosing 이벤트에서는 FormClosingEventArgs e이 표시됩니다. 그런 다음 e.CloseReason == CloseReason.WindowsShutDown을 확인하십시오. 이는 양식을 닫은 이유가 OS를 종료하고 있음을 의미합니다.

관련 문제