되는대로 살자

[API] 소스분석(first) - 메시지 처리 함수 본문

2009~2014/Windows_API

[API] 소스분석(first) - 메시지 처리 함수

malu 2011. 6. 20. 18:41
이 프로그램은 두개의 함수만 ㅈㅇ의하고 있다. 하나는 프로그램의 시작점인 WinMain이며 나머지 하나는 WndProc 이다. WinProc 은 사용자와 시스템이 보내오는 메시지를 처리하는 아주 중요한 일은 한다. 도스에서는 main함수만으로도 프로그램을 작성할 수 있지만(구조적 프로그래밍 이라서) 윈도우즈에서는 아주 특별한 경우를 제외하고는 이 두개의 함수가 모두 있어야 한다.
WinMain은 메인 윈도우를 만들고 화면에 출력하기만 할 뿐이며 대부분의 일은 WndProc에서 이루어진다. WinMain 은 프로그램을 초기화하고 시작시키기만 하므로 모양이 대체로 일정한데 비해 WndProc은 프로그램의 실질적이고도 고유한 처리를 하는 곳이므로 프로그램에 따라 천차만별로 달라진다. 그래서 소스를 분석할 때 주의깊게 봐야 할 부분은 WinMain이 아니라 WndProc이다. WinMain 바로 윗부분에 WndProc 함수의 원형이 선언되어 있다.

LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM);

그리고 소스의 뒷부분에는 이 함수의 홈체가 정의되어있다. 이 함수가 어떤 일을 하고 어ㄸ허게 구서오디는지 잠시 후에 따로 자세히 살펴볼 것이다.