본문 바로가기

Programming

윈도우 절전모드 진입과 복귀시의 이벤트 확인

[이글의 전문은   http://tindevil.com/site/post/3763  에서 확인할 수 있습니다. ]


윈도우가 절전모드에 진입하거나  절전모드에서 복귀하는 시점을 알아내는 방법입니다.

룰~은 간단합니다. 브로드캐스트 메세지중에 해당 메세지만 캐치하면되니까요.

WndProc 를 오버라이드 할 예정입니다.

upload file

아래는 c#용 코드입니다.

private const int WM_POWERBROADCAST = 0x218;
private const int PBT_APMQUERYSUSPEND = 0x0;
private const int PBT_APMRESUMESUSPEND = 0x7;
private const int PBT_APMSUSPEND = 0x4;

protected override void WndProc(ref Message m)
{
    switch (m.Msg)
    {
        case WM_POWERBROADCAST: //전원관리 메세지
            switch (m.WParam.ToInt32())
            {
                 case PBT_APMQUERYSUSPEND:
                 case PBT_APMSUSPEND: //절전모드진입명령어인데 버젼에따라서 사용여부가 갈리는듯
                       this.lb_suspend.Text = DateTime.Now.ToString();
                       break;
                 case PBT_APMRESUMESUSPEND: //절전모드 복귀시
                       this.lb_resume.Text = DateTime.Now.ToString();
                       break;
           }
           break;
      }
      base.WndProc(ref m);
}


다음내용과 파일을 받으시려면 원본 블로그를 방문해주세요~

[ 다음 내용 보기 ] - http://tindevil.com/site/post/3763