Study Memos (206) 썸네일형 리스트형 GDI (Section 16) 참고> blog.naver.com/tipsware/220986173576 Bitmap과 GDI 그리고 DC (Feat. GDI Object) 한동안 제가 비트맵에 대한 블로깅을 참 많이 했는데, 그 이유가 바로 GDI와 DC를 설명하려고 했던 것... blog.naver.com 1. GDI(Graphic Device Interface): Windows 운영체제가 그래픽 장치에 대해 프로그램이 독립성을 유지할 수 있도록 만든 기술 -> Windows 운영체제는 그래픽 장치에 대해 프로그램 소스 코드가 독립성을 유지할 수 있도록 그래픽 장치를 하나의 모델로 추상화시킴 2. GDI Object: Windows 운영체제는 그래픽 장치를 추상화 시키기 위해서 그리기에 필요한 요소들을 여러 개의 객체로 구성하고 장.. BITMAP 구조체 (Section 15) 참고> blog.naver.com/tipsware/220983334717 BITMAP 구조체 대하여 BITMAP 구조체는 비트맵의 폭, 높이, 색상 형식 그리고 비트 패턴에 대한 주소를 저장할 수 있습니다... blog.naver.com 1. BITMAP 구조체는 비트맵의 폭, 높이, 색상 형식 그리고 비트 패턴에 대한 주소를 저장할 수 있음 (wingdi.h) -> bmType: 비트맵 형식 변수, 항상 0을 넣어주어야 함 -> bmWidth: 비트맵의 폭(pixel 단위) -> bmHeight: 비트맵의 폭(pixel 단위) -> bmWidthBytes: 가로 방향으로 한 줄에 사용되는 바이트 수 ex) 비트맵 폭이 200dlrh 32비트(4바이트) 색상이라면 한 줄에 필요한 크기는 200 * 4 =.. Bitmap (Section 13) 참고> blog.naver.com/tipsware/220984197835 비트맵에 대하여 : Win32 프로그래밍 관련 전체 목차http://blog.naver.com/tipsware/221059977193 1. 컴퓨터의 화면 출력 ... blog.naver.com 참고> genesis8.tistory.com/37 리틀 엔디안 VS 빅 엔디안 먼저 둘을 비교하기에 앞서 엔디언이란 무엇인가? 엔디언(Endianness)은 컴퓨터의 메모리와 같은 1차원의 공간에 여러 개의 연속된 대상을 배열하는 방법을 뜻하며, 바이트를 배열하는 방법을 특히 genesis8.tistory.com 1. 모니터에 출력되는 영상은 '점(pixel) 단위'로 구성되어 있음 2. 해상도(resolution) => 컴퓨터의 그래픽 장치.. Windows Message (Section 8) https://blog.naver.com/tipsware/221211757379 1. Windows 응용 프로그램들은 시스템 자원을 사용하고 싶은 경우, API 함수를 호출하여 Windows 운영체제에게 서비스를 요청하고 해당 서비스에 대한 운영체제의 결과를 기다리는 방식으로 작업이 진행됨. 2. 특정 Window에 마우스를 클릭하거나 키보드를 입력했다면 Windows 운영체제가 해당 Window를 소유한 응용 프로그램에게 그 사실을 알려야지만 해당 응용 프로그램이 사용자 입력에 대한 상황을 처리할 수 있음. => 이를 위해 Windows 운영체제와 실제 반응할 응용 프로그램간의 동기화 기술이 필요. => "Window Message"의 탄생 3. Message ID 운영체제가 Window에 발생한 각종.. Windows Class (Section 7) 참고> https://blog.naver.com/tipsware/221004018862 'Window Class'에 대하여~ : Win32 프로그래밍 관련 전체 목차http://blog.naver.com/tipsware/221059977193이 글은 C++ 언어의 cla... blog.naver.com 1. Windows 운영체제는 멀티태스킹을 지원하기 때문에 중복된 데이터를 줄이기 위한 많은 고민을 하였다..!! 2. 코드 영역은 같은 프로그램이 여러 번 실행되었을 경우에도 모두 동일하다. 중복이므로 줄일 수 있다. 반면 전역 변수, 지역 변수, 힙에 저장되는 데이터등 실행 중에 수정 가능한 데이터는 줄일 수 없다. 3. 사용자가 서로 다른 프로그램들을 여러 개 띄우면 코드 영역도 모두 다르기 때문에 .. Windows Event (Section 6) 참고> https://blog.naver.com/tipsware/221211432527 1. Win32 프로그램에서는 WinMain 함수가 시작 함수 2. 이벤트 객체는 0 또는 1(False 또는 True)의 상태를 기억할 수 있는 '커널 객체(운영체제가 관리하는 객체)'이다. 3. 같은 프로세스 내에 있는 스레드 간에는 변수(메모리)를 같이 사용할 수 있기 때문에 이벤트 이름을 굳이 지정하지 않아도 되지만, 서로 다른 프로세스에 있는 스레드 간에 이벤트 객체를 공유하고 싶다면 이벤트 이름을 만들어 두어야 한다. 4. 이벤트 객체를 생성할 때 이름을 동일하게 사용해서 이벤트 객체가 공유된다면 먼저 만들어진 이벤트 객체의 정보가 우선시 되기 때문에 나중에 사용한 CreateEvent 함수의 bManual.. HInstance (Section 5) 참고> https://blog.naver.com/tipsware/221065845049 HINSTANCE : Win32 프로그래밍 관련 전체 목차 http://blog.naver.com/tipsware/2210599771931. HINSTANCE ... blog.naver.com 1. HINSTANCE: 'H(Handle) + Instance' 로 구성된 이름이고 'Instance Handle'을 저장할 때 사용 2. Process: 메모리에 실행 가능한 상태로 재배열된 실행 코드 3. Process ID: 프로세스를 구별하기 위한 값 ===> 'Instance Handle'은 동일한 프로그램이 여러 번 실행된 경우 해당 프로그램들이 중복해서 가지게 되는 실행 명령 코드나 리소스(아이콘, 커서, 비트맵... Windows Handle (Section 3) 참고> https://blog.naver.com/tipsware/221065382244 핸들(Handle)에 대하여 : Win32 프로그래밍 관련 전체 목차http://blog.naver.com/tipsware/2210599771931. 운영체제와 리소스... blog.naver.com 1. 핸들(Handle) : 운영체제 내부에 있는 어떤 리소스의 주소를 정수로 치환한 값 2. 핸들 테이블 : 리소스의 주소와 핸들 값을 한 쌍으로 묶어서 관리하는 테이블 ==> 응용 프로그램(User Part)이 운영체제(Kernel Part)에게 특정 리소스를 요청하면, 운영체제는 리소스의 주소 대신 핸들을 넘겨줌 3. 핸들값은 HANDLE이라는 자료형을 기본적으로 사용한다. 4. Instance Handle: 윈도.. 이전 1 ··· 19 20 21 22 23 24 25 26 다음