#include <windows.h>
LRESULT CALLBACK WndProc(HWND,UINT,LPARAM,WPARAM);
HINSTANCE g_hInst;
LPSTR lpszClass = "TEXT OUT";
int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpCmdLine, int nCmdShow){
MSG Message;
HWND hWnd;
WNDCLASS WndClass;
g_hInst = hInstance;
WndClass.cbClsExtra = 0;
WndClass.cbWndExtra = 0;
WndClass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH);
WndClass.hCursor = LoadCursor(NULL, IDC_ARROW);
WndClass.hIcon = LoadIcon(NULL, IDI_APPLICATION);
WndClass.hInstance = NULL;
WndClass.lpfnWndProc=(WNDPROC)WndProc;
WndClass.lpszClassName=lpszClass;
WndClass.lpszMenuName=NULL;
WndClass.style=CS_HREDRAW | CS_VREDRAW;
RegisterClass(&WndClass);
hWnd=CreateWindow(lpszClass,lpszClass,WS_OVERLAPPEDWINDOW,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,CW_USEDEFAULT,NULL,(HMENU)NULL,hInstance,NULL);
ShowWindow(hWnd,nCmdShow);
while(GetMessage(&Message,0,0,0)){
TranslateMessage(&Message);
DispatchMessage(&Message);
}
return Message.wParam;
}
LRESULT CALLBACK WndProc(HWND hWnd, UINT iMessage, LPARAM lParam, WPARAM wParam){
HDC hdc;
switch(iMessage){
case WM_DESTROY :
PostQuitMessage(0);
return 0;
case WM_LBUTTONDOWN : //한번 출력해주고 끝남.
hdc=GetDC(hWnd);
TextOut(hdc,100,100,"helloworld",10);
ReleaseDC(hWnd,hdc);
return 0;
}
return (DefWindowProc(hWnd,iMessage,lParam,wParam));
}
/* 윈도우즈는 세가지 DLL로 구성되어있다.
* KERNEL - 메모리를 관리하고 프로그램을 실행시킴
* USER - 유저 인터페이스와 윈도우를 관리
* GDI - 화면 처리와 그래픽을 담당
* DC(Device Context) - 출력에 필요한 모든 정보를 가지는 데이터 구조체 GDI 모듈에 의해 관리
*/