시스템이 종료되기 전에 Windows system이 보내는 메시지는
WM_QUERYENDSESSION, WM_ENDSESSION 이 있습니다.
WM_QUERYENDSESSION 은 시스템이 모든 App에게 시스템을 종료해도
되는지 묻는 메시지 입니다. 이 메시지가 왔을때 1을 되돌려 주면
시스템 종료를 승인하는 것이고 0을 되돌려 주면 승인하지 않는 것
입니다.
WM_QUERYENDSESSION 은 메시지를 받을 수 있는 모든 App에게 전달되며
모든 App가 모두 1을 반환한 경우에 Windows 시스템은 다시 WM_ENDSESSION을
모든 App에게 보냅니다.
WM_ENDSESSION 이 App에게 전달되면 시스템에 등록되어 있는 모든 App
가 시스템 종료를 승인한것 이므로 App는 자신을 종료해도 됩니다.
만일 WM_QUERYENDSESSION 을 승인한 App가 WN_ENDSESSION의 메시지 이후
일정한 시간이 지나도록 자신을 종료시키지 않는다면 Windows 시스템은
사용자에게 이 사실을 알리며, App를 강제 종료 시킵니다.
-------------------------------------------------------------------------------------------
smileye 님이 쓰신 글 :
: 발생하는 윈도우 메시지(TMessage.Msg)는 무엇인가요?
: WM_ENDSESSION은 모두 발생하는것으로 알고 있는데,
: 그 이외의 것으로 각각을 구분할 수는 없을까요?
: (App에서...)
:
: 부탁합니다.
: 좋은 하루되십시오.
:
|