윈도우7에 추가된 기능 중 위 그림과 같이 종료 시점에서 이미 실행 중인 프로그램들을 나타내는 화면이 있다.

이전 XP 에서는 종료를 하면 아래와 화면과 같이 한 프로그램씩  "지금 끝내기" 를 눌러줘야 했었지만



윈도우7 에서는 "강제 종료" 한번의 클릭으로 모두 종료할 수 있게 된 것이다.

아래의 메세지는 위와 같은 상황에서의 메모장의 메세지를 로깅한 것인데 위와 같은 종료시점에서 운영체제가 보낸 메세지가 초반에 나오는 것을 볼 수 있다. 혹여나 WM_CLOSE 같은 것을 보내지 않을까 생각했는데  WM_QUERYENDSESSION 을 보내고 있음을 알 수 있다.



생각에는 뭔가 특별한 화면이라 생각해서 약간 분석을 해보았다.



위 화면은 해당 화면을 반토막 내서 살펴본 것이다. 

해당 화면을 구현하고 있는 프로세스는 csrss.exe 이고 다이얼로그로 만든 화면임을 알 수 있다. 

특별히 다이얼로그 사이에 BlockedShutdownResolver 라는 클래스 이름을 가진 윈도우도 존재함을 알 수 있다.

그리고 특별한 컨트롤이 있는 것이 아니라 static 과 scrollbar, button 으로 이루어진 화면이었다.

그래서 마우스에 반응하는 컨트롤이 스크롤바와 버튼 뿐이다.


흠.. 더 이상 적을게.. 없다..



  • 네이버 블러그 공유하기
  • 네이버 밴드에 공유하기
  • 페이스북 공유하기
  • 카카오스토리 공유하기