프로그래밍/WindowsAPI 스피비 2011. 5. 2. 12:24
사용자가 원하는 작업을 하기 위해 스타일을 적용할때 flag값을 이용하는데 이때 비트의 개념을 이용한다. 비트필드와 비슷한 개념이므로 비트필드에 대해선 예전글을 참조해주세용용 ㅎㅎㅎ [프로그래밍/C언어] - 비트필드(비트 구조체) API함수들은 작업에 대한 세부 정보(옵션)을 인수로 전달받는다. 이 전달할 옵션이 여러개 있을경우 인수만큼 전달하는것은 상당히 비효율적이므로 비트를 이용하는 것이다. 즉, 하나의 인수에 복수 개수의 옵션을 묶어 전달하는것이다. 여러개의 옵션을 비트(or) 연산자로 묶어 하나의 정수값만 전달하고, 함수는 인수의 개별 비트를 테스트한 후 어떤 옵션이 선택되었는지 알 수 있는것이다. ex) #define DT_TOP 0x00000000 #define DT_LEFT 0x0000000..
프로그래밍/WindowsAPI 스피비 2011. 5. 2. 12:14
핸들이란 구체적인 어떤 대상에 붙여진 번호이며 문법적으로는 32비트(또는 64비트)의 정수값이다. 도스 프로그래밍에서는 파일입출력시 파일 핸들을 받았음. 윈도우즈 프로그래밍에서는 여러가지 종류의 핸들이 있다. 윈도우핸들(hWnd), DC 핸들, 메모리 핸들 사용. 이렇게 핸들을 자주 사용하는 이유는 ID역할을 하기 때문이고 문자열보다 빨라서 정수를 이용한다. 특징 1. 핸들은 일단 정수값이다. 대부분 32비트값. => 핸들은 구분을 위한 것이므로 핸들끼리 중복되지 않아야한다. 이런 목적으로는 정수값이 가장 적합 2. 핸들은 운영체제가 발급한다. 사용자는 운영체제가 발급한것을 사용하기만한다. 3. 같은 종류의 핸들끼리는 절대로 중복된 값을 가지지 않는다. 4. 핸들은 정수형이므로 값을 가지겠지만 그 실제값..
프로그래밍/WindowsAPI 스피비 2011. 5. 2. 11:28
윈도우즈 프로그래밍에서는 변수에 이름을 붙이는 방법이 있다. 대문자와 소문자를 적절히 사용해서 보기 편하게 해야한다. 헝가리식 표기법을 사용한다. 접두어 원래말 의미 cb Count of Bytes 바이트 수 dw double word 부호없는 long형 정수 h handle 윈도우, 비트맵, 파일 등의 핸들 sz Null Terminated NULL 종료 문자열 w Word 부호없는 정수형 i Integer 정수형 b Bool 논리형 데이터형 의미 BYTE unsigned char형 WORD unsigned short형 DWORD unsigned long형 LONG long과 동일하다. LPSTR char *와 동일하다. BOOL 정수형이며 TRUE, FALSE 중 한 값을 가진다 #include 에 ..
프로그래밍/WindowsAPI 스피비 2011. 5. 2. 11:07
사진출저: www.winapi.co.kr API란? API라는 것은 Application Programming Interface 의 약자로 운영체제가 응용프로그램을 위해 제공하는 함수의 집합으로 응용프로그램과 디바이스를 연결해주는 역할을 한다. API는 특정 시스템을 프로그래밍 하기위한 함수의 집합을 이르는 일반 명사이며 그중의 하나가 윈도우즈 API나 요즘은 일반적으로 API라고 하면 윈도우즈 API를 말하는 경우가 많다.그래서 통상 API를 공부 한다라고하면 이는 윈도우즈 API를 말하는데.. 윈도우 os가 그만큼 대중화되었다는 것이겟지? (우린 MS화 되고있어.....) 운영체제는 하드웨어와 응용프로그램 사이에 위치하며 응용 프로그램을 대신하여 하드웨어와 메모리를 관리하는 시스템 소프트웨어이다. 1..
프로그래밍/WindowsAPI 스피비 2011. 5. 2. 10:38
콘솔환경과 윈도우즈 프로그래밍의 차이점과 특정을 알아보자. 1) 그래픽 기반의 운영체제이다. (GUI) => 콘솔은 화면처리를 문자로 하지만 윈도우즈 API는 픽셀 단위로 함으로서 섬세한 표현이 가능. 2) 멀티 태스킹이 가능하다. =>한 번에 여러가지 일을 동시에 수행할 수 있는 운영체제. 3) 메시지 구동 시스템이다. =>멀티 태스킹 환경에서는 프로그램 하나가 시스템의 자원을 독점할 수 없다!!. (키보드 마우스는 물론이다) 그래서 응용프로그램이 입력장치로부터 직접 입.출력을 받지 않고, 운영체제가 대신 입력을 받아 전달해 주는 메시지 방식을 사용. ( 메시지 구동 시스템, 이벤트 드리븐 시스템 이라고 함 ) 프로그램 실행 순서는 메시지 순서에 따른다. 4) 장치에 독립적이다. =>윈도우즈는 디바이스..