Windows/_Windows Programming12 타이머(Timer) 타이머 : 한 번 지정해 놓기만 하면 일정한 시간 간격을 두고 연속적으로 게속 발생한다. 주기적으로 같은 동작을 반복해야 한다거나 여러 번 나누어 해야 할 일이 있을 때 이 메시지를 이용한다. 타이머 메시지를 사용한 예제이다. (윈도우 프로그램 기본틀에 수정을 하면 된다 http://dakuo.tistory.com/entry/1) LRESULT CALLBACK WndProc(HWND hWnd, UINT iMessage, WPARAM wParam, LPARAM lParam) { HDC hdc; PAINTSTRUCT ps; static HANDLE hTimer; SYSTEMTIME st; static char sTime[128]; switch(iMessage) { case WM_CREATE: hTimer =.. 2009. 12. 23. 입력하기 1. 키보드 입력 WM_CHAR 메시지 : 문자키 메시지 키보드로부터 입력이 발생했을 경우 윈도우즈는 포커스를 가진 프로그램에게 키보드 메시지(WM_CHAR, WM_KEYDOWN)를 보내주며 프로그램은 이 메시지를 받아 키보드 입력을 처리한다. (참조 : 포커스(Focus)란 입력초점이라는 뜻 즉 포커스를 가진 프로그램 = 활성화된 윈도우 오직 하나의 프로그램만이 활성화 될 수 있다) 키보드로부터 입력된 키값들을 화면으로 출력해주는 예제이다. (윈도우 프로그램 기본틀에 수정을 하면 된다 http://dakuo.tistory.com/entry/1) LRESULT CALLBACK WndProc(HWND hWnd, iMessage, WPARAM wParam, LPARAM lPara) { HDC hdc; PAI.. 2009. 12. 1. 출력하기 1. DC(Device Context) 윈도우즈는 세 가지 동적 연결 라이브러리(DLL) 로 구성되어 있는데 KERNEL : 메모리를 관리하고 프로그램을 실행시킨다. USER : 유저 인터페이스와 윈도우를 관리한다. GDI : 화면 처리와 그래픽을 담당한다. 윈도우즈 API 함수의 대부분은 이 세 DLL에 의해 제공된다. 특히 화면으로 출력되는 모든 글자와 그림은 GDI 를 통해야 한다. DC(Device Context)란 출력에 필요한 '모든 정보'를 가지는 데이터 구조체이며 GDI 모듈에 의해 관리된다.(ex. 폰트, 선의 색상과 굵기, 허가된 영역에만 출력하게 하기, 출력 방법 등등) 2. 기본 출력 예제 DC를 사용하여 문자열을 출력해보자. 마우스 왼쪽 버튼(WM_LBUTTONDOWN)을 누르면 .. 2009. 11. 28. 윈도우 기초 프로그래밍 #include LRESULT CALLBACK WndProc(HWND,UINT,WPARAM,LPARAM); HINSTANCE g_hInst; LPCTSTR lpszClass=TEXT("Sample"); int APIENTRY WinMain(HINSTANCE hInstance,HINSTANCE hPrevInstance ,LPSTR lpszCmdParam,int nCmdShow) { HWND hWnd; MSG Message; WNDCLASS WndClass; g_hInst=hInstance; WndClass.cbClsExtra=0; WndClass.cbWndExtra=0; WndClass.hbrBackground=(HBRUSH)GetStockObject(WHITE_BRUSH); WndClass.hCursor.. 2009. 11. 27. 윈도우즈(Windows) 프로그래밍의 기초 윈도우즈(Windows)의 장점 : 1. 그래픽 기반의 운영체제이다. 2. 멀티 태스킹이 가능하다. 3. 장치에 영향을 받지 않는다. 4. 일관성 개발툴의 선택 : 1. API : API(Application Programming Interface) : 운영체제가 응용 프로그램을 위해 제공하는 함수의 집합 2. SDK : SDK(Software Development Kit) : 윈도우즈를 만든 Microsoft에서 제공하는 윈도우즈용 프로그램 개발 킷이다. API 함수들을 사용하여 프로그램을 작성하며 가장 원론적이고 먼저 발표된 개발방법이다. 섬세하고 막강하며 속도가 빠르고 크기에 유리하나 방대한 API 함수를 알아야 하며 코드가 길어지고 생산성도 낮다. 3. 클래스 라이브러리 API 함수들을 좀 더 쉽.. 2009. 11. 27. .xxx 파일 만들기 윈도우에서 파일이름을 .txt 이런식으로 넣으면 파일이름을 입력해달라며 생성되지 않는다. 하지만 EditPlus 를 쓰면 이 문제를 해결하여 .txt 이런식의 파일을 만들수 있다.(다른 방법도 분명히 존재한다) 이런 파일을 만들었을시 여러 경우에 유용하게 쓰이지만 예를 들면 제로보드의 파일 업로드 취약점을 이용하여 웹쉘을 업로드하려고 할때 확장자가 .php 인 파일을 필터링 하는 경우가 있다. 이때 .htaccess 파일을 생성하여 이를 우회하는 공격기법이 있는데 이때 .htaccess 파일을 윈도우에서 생성할수 없다(파일명에러) 이 때 EditPlus를 사용하면 이 문제가 해결되어 .htaccess 파일을 생성하여 공격이 가능하다. 위와 같이 오류가 뜨던것이 EditPlus 로 열어서 다른이름으로 저장.. 2009. 11. 24. 이전 1 2 다음