삽질의 현장/- 윈도우 API 17

#004_WIndow_API_WinMain, WndProc에 대해서 (3)

안녕하세요 삽잡이입니다.이번 시간에도 마찬가지로 WinMain함수와 WndProc함수에 대해서 마져 알아보도록 하겠습니다. WndProc의 매개변수는 어떻게 생겼을까요... 1LRESULT CALLBACK WndProc(HWND hwnd, UINT iMsg, WPARAM wParam, LPARAM lParam)cs 이런식으로 생겨먹었습니다...매개변수를 하나씩 살펴보도록 하겠습니다. 우선 hwnd의 경우 메시지가 발생한 윈도우의 핸들을 뜻합니다.다음 매개변수인 iMsg는 메시지의 종류를 뜻합니다. 그리고 하위 두개의 매개 변수는 각각 4바이트 짜리 변수를 뜻합니다.우선 wParam의 w의 경우 2Byte 크기의 WORD를 뜻했었는데 뭐....현재는 정보도 많아지고... 과거의 잔재로 그냥 w가 붙어 있는..

#003_WIndow_API_WinMain, WndProc에 대해서 (2)

안녕하세요 삽잡이입니다. 지난 시간에 이어서 ShowWindow와 UpdateWindow에 대해서 알아보려고 합니다.위의 두 함수는 CreateWindow에서 반환된 윈도우 핸들을 사용하여윈도우를 나타내는 기능을 담당하고 있습니다. 프로그램상 메모리가 생성되면 해당 프로세스를 관리할 수 있는 핸들을 OS로부터 받게됩니다.즉, ShowWindow는 핸들을 줄테니 만들어 달라는 기능을 담당하고 있는 것이지요...이때 WinMain 함수의 마지막 인수인 nCmdShow가 사용되는데,사용자가 Input한 형태로 윈도우를 띄우라는 의미가 내포되어 있습니다. UpdateWindw는 메시지를 처리하느라 화면에 안 뜰 수 있는 문제를 해결해주는 함수로,'지금 나타내!'라는 뜻을 가지고 있는 함수입니다. 다음으로는 메시..

#002_WIndow_API_WinMain, WndProc에 대해서 (1)

안녕하세요 삽잡이 입니다.이번 시간에는 지난 시간에 이어서 WinMain함수와 WndProc함수에 대해서 조금 더 알아보도록 하겠습니다. 우선, 지난 시간에 배운 내용을 간략하게 설명하자면...WinProc 함수는 프로시저이고 , 메시지를 처리하는 함수를 뜩합니다.메인 함수인 WinMain함수는 크게 세가지 영역으로 나뉠 수 있습니다. 첫번째로, 윈도우의 클래스를 등록하는 부분이 있습니다.윈도우 클래스를 등록하기 위해서는 구조체를 사용해야합니다. 즉, 윈도우 클래스라는 구조체를 설정한 다음 해당 윈도우 클래스를 등록하는 것입니다.윈도우 구조체를 잠시 살펴보도록 하기 전, MSDN의 도움을 청해보도록 하겠습니다. 자... 여러분이 지금 살펴보시는 구조체가 바로 WNDCLASS라고 부르며,해당 클래스를 등록..

#001_WIndow_API_Intro

안녕하세요 삽잡이입니다.오랜만에 혼자놀기를 다시 시작하게 되었습니다. 우선 오늘은 간략하게 Window API에 대해서 알아보도록 하겠습니다. 기본적으로 윈도우 API를 사용하기 위한 서적들을 참고하여 본다면,반드시 포함되어 있는 함수들이 두개가 있습니다.바로, WinMain 함수와 WndProc 함수입니다. 조금 오버를 더해 이 함수들을 통해 API 함수들이 만들어진다고 해도 어느정도 맞다고 볼 수 있다는 것이지요... 이 두 함수는 WIndow API 와 관련하여 거의 99% 있어야 합니다.물론 더 세부적으로 말하자면 WinMain 함수는 반드시 있어야하지만,WndProc 함수는 다른 놈으로 바꿀 수도 있다고 할 수 있습니다. Process는 실행중인 프로그램을 말합니다.좀 더 자세하게 말씀드리자면,..

#Win API 기본

#include #include LRESULT CALLBACK WndProc(HWND hwnd, UINT iMsg, WPARAM wParam, LPARAM lParam);int WINAPI WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdLine, int nCmdShow)//프로그램에 커널이 부여하는 ID, 이전에 부여받은 값(사용x), 문자열, 윈도우가 화면에 출력될 때 형태를 정의{HWNDhwnd; MSGmsg;WNDCLASS WndClass;WndClass.style = CS_HREDRAW | CS_VREDRAW; //윈도우가 출력되는 형태 (윈도우의 크기를 변경하면 다시 그리는 형태의 윈도우)WndClass.lpfnWndPro..

[삽잡이::Window] Window? 창문이냐? 미안하다!

[이전 이야기]001. 우리의 진정한 친구 OS : http://sapzape.tistory.com/2 안녕하세요 여러분의 친구 섹시한 삽잡이입니다.어때요 좀 섹시한가요? 지난 시간에 뭐 되지도 않는 말로 주절 거려서 OS에 대해서 아주 살짝 알아봤습니다.OS란 뭐라고요?맞습니다. 하드웨어에 바람을 불어넣는거에요. 아무튼... 오늘은 Window 시스템 프로그래밍에 대해서 알아보겠습니다.뭐 부족하지만 여러분의 친구 삽잡이. 열심히 삽질하며 여러분에게'아름다운 knowlege'를 전파하도록 하겠습니다. 그렇다면~ GO GO GO~ Window Programming.... 저도 참 좋아하는데요..어떻게 동작할까요? 뭐... WIndow OS와 이 안에서 노는 Window 응용 프로그램들에 의해서 동작되겠죠...

[삽잡이::Window] 우리의 진정한 친구 OS

안녕하세요 여러분의 친구 삽잡이입니다.오늘부터 여러분과 함께 아름다운 IT 지식을 나누고자합니다.제가 나누고자 하는 첫번째 아름다운 knowledge! 바로 OS 입니다. 지금 시작합니다~ GO GO GO ~ 여러분이 생각하시는 OS란 무엇인가요? " Operating System 이요!"" 운영체제요!"" Betriebssystem"" 操作系統" 허허... 구글 번역기야 고맙다!!!! 자자.. 그런건 군대 전역하고 아저씨 냄새 풀풀 날리며 뭔 수를 써서라도 여자친구 하나 생기리라 다짐하지만 결국 아이돌 그룹이나 보며 침흘리는 복학생 오빠들도 알죠. 죄송합니다. 그렇다면 인터넷의 힘을 빌려봅시다. 허허.. 고맙다 위키백과야... 새로운 사실을 알게됬어. 이제 잡소리 집어치우고 한번 알아봅시다. OS란? ..