목록Programing (28)
Hacking Arts
-메시지 루프를 통해서 윈도우 프로시저로 전달된 메시지는 윈도우 프로시저가 구분하여 작업을 처리하게 된다. LRESULT CALLBACK WndProc(HWND hWnd, UINT iMessage, WPARAM wParam, LPARAM lParam) { HDC hdc; PAINTSTRUCT ps; switch(iMessage) { case WM_CREAT: return 0; case WM_PAINT: hdc=BeginPaint(hWnd, &ps); EndPaint(hWnd, &ps); return 0; case WM_DESTROY: PostQuitMessage(0); return 0; } return(DefWindowProc(hWnd, iMessage, wParam, lParam)); } -WndPro..
-WinMain의 마지막 메시지 루프돌리기 입니다. 윈도우를 나타내는 것까지는 다 완성했습니다. 그 다음 이젠 윈도우에 명령이 들어왔을 때 처리해주는 부분을 완성 시켜야 됩니다. 그 부분이 WndProc윈도우 프로시져 부분입니다. 1.이벤트 처리 방식 : 임의의 이벤트가 발생하면 즉시 처리되는 방식이며 이벤트는 키보드나 마우스의 입력을 말합니다. 메세지 내용 1) 이벤트가 발생한 윈도우 핸들 2) 이벤트의 종류 3)이벤트가 접수된 시간 4) 이벤트가 발생한 위치(좌표)위와 같은 메시지가 들어오게 되면 윈도우는 다음의 내용을 처리하게 됩니다. 2.메시지 루프 일단 메세지를 받으면 윈도우 프로시저로 보내줘야되는데 이때 메시지 루프가 그 역할을 하게 됩니다. [그림 1 이벤트 발생시 처리 과정] 1)어떤 이벤..
-윈도우 클래스를 생성하고 윈도우 객체를 생성하는 것까지 했다. 그다음은 윈도우 객체 화면에 띄우기 이다. 윈도우 존재를 띄어주는 함수로 ShowWindow를 사용한다. -ShowWindow() [그림 1 ShowWindow 정의] 첫번째 인수는 hWnd 화면에 보여줄 윈도우 객체의 핸들이고, 두번째 인수 nCmdShow는 화면에 보여줄 윈도우 형태이다. 설정 값 설명 SW_FORCEMINIMIZE 2000 이후에만 쓸 수 있는 플래그로 윈도우를 소유한 스레드가 차단된 상태에서도 윈도우를 최소화 시킨다. SW_HIDE 윈도우를 숨긴다. SW_MAXIMIZE 윈도우를 최대화 시킨다. SW_MINIMIZE 윈도우를 최소화 시킨다. SW_RESTORE 최대화나 최소화된 윈도우를 이전 상태로 복구한다. SW_S..
-클래스를 생성했다고 윈도우가 만들어지는 것이 아니다. 두번째 단계인 윈도우 객체를 생성해야된다.생성에 이용하는 함수는 CreateWindow라는 함수이다. LPWSTR lpszClass = L"ApiBase"; int APIENTRY WinMain(HINSTANCE hInstance, HINSTANCE hPrevInstance, LPSTR lpszCmdParam, int nCmdShow) { HWND hWnd; MSG Message; WNDCLASS WndClass; WndClass.cbClsExtra = 0;//클래스 여분 바이트수 WndClass.cbWndExtra = 0;//윈도우 여분 바이트수 WndClass.hbrBackground = (HBRUSH)GetStockObject(WHITE_BRU..
-윈도우 클래스 만들기 이전에 설명한 윈도우 클래스 4단계 중 첫번째 단계이다. 윈도우 클래스를 만들때는 일단 WNDCLASS라는 구조체를 선언하고 내용을 추가 해준다음 RegisterClass라는 함수를 이용하여 구조체를 등록해준다. 이러면 과정은 끝이난다.아래는 WNDCLASS 구조체 내용이다. 전부 채워주면 된다. typedef struct tagWNDCLASSW { UINT style; WNDPROC lpfnWndProc; int cbClsExtra; int cbWndExtra; HINSTANCE hInstance; HICON hIcon; HCURSOR hCursor; HBRUSH hbrBackground; LPCWSTR lpszMenuName; LPCWSTR lpszClassName; } WND..
-윈도우 프로그램은 기본적으로 WinMain함수와 WndProc 함수로 구성된다. 두 함수는 필수 함수이다. WndProc는 다른 이름으로 수정 가능하다. WinMain() { 윈도우_클래스_만들기 윈도우_객체_생성하기 윈도우_객체_화면에_띄우기 메시지_루프_돌리기 } WndProc() { 전달된_메시지_처리하기 } 위와 같은 기본 구조를 나타낼 수 있다. WinMain()함수는 윈도우 생성을 담당한다. WndProc()함수는 윈도우 메시지가 발생하면 처리하는 부분을 담당한다고 생각하면 된다. WinMain함수는 그림1과 같은 일을 하게된다. [그림1] 다음 WndProc는 메시지루프를 돌면서 들어오는 메시지들을 처리하게 된다.WndProc는 윈도우 프로시져 윈프록등으로 불린다. 인수 설명 hInstan..
1.Dim - 변수를 선언예)Dim a,b,c 2.Set - 객체를 생성예)Set rs = Server.CreateObject("ADODB.RecordSet") 3.IF ~ THEN - 만약 ~ 라면. (조건이 적은 경우)예)IF intNumber = 1 THEN Response.Write "intNumber 에 들어있는 수는 1입예다!"ELSEIF intNumber = 2 THEN Response.Write "intNumber 에 들어있는 수는 2입니다!"ELSEIF intNumber = 3 THEN Response.Write "intNumber 에 들어있는 수는 3입니다!"ELSE Response.Write "intNumber 에 들어있는 수는 1,2,3 이 아닌 다른 숫자입니다!"END IF 4.S..
기존의 HTML은 위 그림처럼 서버에서 처리 없이 코드 페이지를 직접 클라이언트에게 전달후 클라이언트 내에서 처리를 해서 페이지를 보여주는 방식이다. 그에 비해 ASP는위 그림처럼 ASP로 짜여진 코드를 서버(Window Server/IIS)에서 처리 후 클라이언트에게 전달하는 방식을 말한다.위 같은 언어로 PHP가 비슷하며 JSP랑은 조금은 틀리다. 위 설명의 예로는 방명록을 말할 수 있다. HTML로는 방명록을 만들 수 없다.하지만 ASP와 같은 언어를 사용함으로써 방명록을 만들 수 있게 된다.