윈도우는 메세지 처리 방식이라고 한다,

DOS(윈도우 이전의 OS를 말한다) 시대에는 사용자의 입력(마우스 움직임,클릭,키보드 입력등)을

모두 프로그램내에서 처리해주어야 했다.

그러나 윈도우에서는 이런 입력 부분을 OS가 맡아서 처리하개 된다.

OS는 이 입력을 각 프로그램에 전달해 준다

이때 사용되는 것이 메세지란 것으로 전달된다.

메세지는 이미 시스템에 정의된 값이다.

 

각 프로그램은 이 메세지를 받아 처리하느냐 처리하지 않느냐에 따라

입력에 반응하는 또는 반응하지 않는 프로그램이 작성된다.

 

따라서 윈도우를 메세지 처리 방식이라고도 한다.

 

입력 - 윈도우 OS- 각 프로그램와 같이 처리된다.

 

입출력기기는 하드웨어 기기마다 참 다양하다,

입출력기기와 윈도우 OS 사이에 드라이버라는 프로그램이

사용되어 하드웨어 사양은 다 다를지라고 윈도우 OS에는 같은

메세지,기능이 적용될수록 있도록 드라이버 프로그램이 중계 역할을

해준다.

 

OS에는 메세지 큐라는 것이 존재한다.

이 메세지큐는 입력이나 기타 장치에서 발생된 메세지가 우선 쌓인다.

메세지 큐에는 또 시스템 메세지큐가 있고 각 프로그램 메세지 큐가 존잰한다.(OS에 존재하는)

 

각 프로그램에서는 메세지 루프에서 프로그램 메세지 큐의 메세지를 하나씩 가저와 번역 및

처리 요청을 OS에게 보내면 OS는 해당 윈도우의 메세지 처리 프로시저에 그 메세지를 보낸다.

 

윈도우 생성관정

- 윈도우 클래스 제작:

   윈도우에 기본 윈도우 프로시저(메세지 처리 프로시저)로 사용한 프로시저 주소를 지정한다.클래스명
- 등록: 시스템에 윈도우 클래스를 등록한다

- 생성: 등록한 클래스를 사용 윈도우를 생성한다.
- 기타: 생성한 윈도우를 가지고 여러 작업을 처리한다
- 메세지 루프: OS의 프로그램 메세지 큐에서 메세지를 하나씩 가저와 번역한 다음 OS에게 메세지에 해당하는 윈도우에

  메세지를 보내것을 요청하는 반복 루프

'C,C++' 카테고리의 다른 글

공유메모리 영역 설정  (0) 2013.03.10
string(UTF-8)을 유니코드로 변환하여 다시 String 형으로  (0) 2013.01.16
예외처리  (0) 2012.11.24
템플릿  (0) 2012.11.22
연산자 오버로딩  (0) 2012.10.28

+ Recent posts