- 
MFC(Microsoft Foundation Class)
 - 트레이 아이콘(Tray Icon) 사라지는 버그 막기
 - 매핑 모드 사용하여 확대 축소 구현하기
 - 인터넷 익스플로어 제어와 관련된 Knowledge Base
 - 선택 영역에 줄번호 붙여주는 매크로
 - Web으로부터 컨트롤을 다운받아서 실행하는 VC예제
 - 현재 작업중인 프로젝트의 폴더를 열어주는 매크로
 - 로컬 폴더에 있는 DLL 사용하게 만들기
 - Dialog Base 프로그램을 Tray에 등록할 때 문제점
 - FlashWindow를 사용하여 내 프로그램의 존재를 알리자
 - 자신의 IP 얻기
 - 스플리터 윈도우 위치 고정하기
 - Dialog Box의 Control에 Tooltip넣기
 - 타이틀 바가 없는 프로그램에 아이콘을 나오게하는 법
 - 슈퍼 클래싱과 서브 클래싱
 - 마지막 에러코드 Watch창으로 나타내기
 - 네트웍 어드레스 변환 방법
 - CWinApp에서 명렁어 인자 분석 방법
 - ToolBar에서 256이상의 Color사용
 - 특정 확장자명으로 프로그램 실행시키기
 - Volatile
 - 어셈블된 코드 보기
 - ATOM을 이용한 프로세스간 데이터 공유
 - WM_COPYDATA 를 사용한 메세지 전송
 - TrackMouseEvent 구현하기
 - 필요없는 warning 은 보기 시러~~
 - 파일의 특정 부분의 warning level을 지정하기
 - CFileDialog에서 초기 경로명 지정하기
 - 256색 이상의 Bitmap ImageList 만들기
 - List Control 에 다른 Control 넣기
 - 초 간단!! 시스템 이미지 리스트 얻어오기
 - CStringArray 정렬하기
 - MFC Dialog Box에서 자신의 Class Name설정
 - 사용자 정의 Common Dialog 만들기
 - 사용자 정의 Common Dialog에서 Common Dialog자원의 위치 설정
 - 자기 프로세스의 복사본을 만드는 방법
 - 일반적인 Child Window 만들기
 - CSocket 과 CAsyncSocket에서 Thread문제
 - SearchPath()의 리턴값 알아보기
 - 화면 캡쳐 소스
 - Dll에 breakpoint 설치하기
 - 윈앰프처럼 TaskBar와 SystemTray 마음대로 주무루기
 - Winamp 처럼 벽에 붙이기
 - Title바 마음대로 하고 싶나요?
 - Toolbar안에 다른 Control넣기
 - 문자열 검색 API
 - 자신만의 윈도 class name을 가지자
 - Coverage가 90% 이하면 안돼요~~~
 - _ASSERTE 가 GetLastError()를 망친다
 - Explorer처럼 툴바에 Text 넣기
 - MDI(Multiple Document Interface) application에서 초기 뷰 없애기
 - Dll 찾는 순서
 - DLL 파일의 이름 알아보기
 - 메인 프래임 윈도우에 얼굴을 부여하기
 - Break Pointer 는 INT 3 으로 통한다!!
 - 두 변수의 값을 바꾸는 환상의 매크로
 - 안전하게 free, delete하는 방법
 - 윈도에 포커스가 가지 못하게 하기
 - TreeCtrl 에서 Context Menu 사용하기 -번역은 나중에
 - 랭귀지 팩을 만들자!!
 - Visual C++ 이 만드는 파일의 의미
 - 툴바에 Dropdown버튼 넣기
 - VC++의 Quick Macro
 - VC++에서도 Regular Expression으로 검색할 수 있다
 - Dll에서 제공되는 함수들 보기
 - 공유 섹션 만들기
 - 화면 보호기 제어하기
 - 바탕화면, 즐겨찾기, 내 문서 등의 패스얻기
 - CAsyncSocket 에서 도메인 주소 바로 사용하기
 - bool과 BOOL의 차이
 - TRACE를 잠깐 못쓰게 만드려면
 - DirectX에서 리턴값 확인은 FAILED매크로를 사용하도록 하자
 - DirectDraw에서 Control Box 사용하기
 - CFrameWnd가 아닌 윈도우에서 툴바의 툴팁 출력하기
 - Dialog Bar 만들기
 - Toolbar에 버튼 추가하기
 - 화면 정보 얻어오기
 - 절전 기능 및 화면 보호기 제어하기
 - 절전 모드로 진입을 거부하는 방법
 - Console 프로젝트와 Windows 프로젝트 바꾸기
 - Ansi 문자열과 Unicode 문자열 바꾸기
 - 문자열을 _T() 형으로 바꿔주는 매크로
 - Resource ID 이름 짓는 방법
 - Little or Big Endian
 - Alt+F4 키로 종료되는거 막는 방법
 - 프로그램내에서 한/영 전환하기
 - pair 라는 것의 용도는?
 - WORD 특정 비트값 알아내기
 - 일반적인 윈도우 소멸 순서
 - 메모리 DC 사용하기
 - DirectDraw에서 256색 Bitmap 간편히 사용하기
 - Source Safe과 Project를 분리시키기
 - 실수(소수점) 나누셈 연산을 정수 연산으로 하기
 - 프로그램안에서 Registry 이름 지정하기
 - 특정 Registry Key안의 Value값 가져오기
 - Registry에 File Icon등록해주기
 - '객체 삽입' 상자 없이 객체 삽입하기
 - 윈도우즈 강제로 종료하기
 - 재밌는(?) 시스템 강제로 다운시키기
 - Document없는 CRichEditView에 Ole객체 삽입 막기
 - 비교 연산자를 위한 예약어들
 - Dialog Based 프로그램에서 가속키 기능 넣기
 - 투명한 윈도우 만들기 (w2k만)
 - 현재 실행되고 있는 자신의 경로와 파일명 가져오기
 - 프로그램 한번만 실행하기
 - MFC 모듈의 상태 데이터 관리하기
 - Dialog Based 프로그램에서 '최근 사용한 파일 목록' 메뉴 넣기
 - Override를 통해 잃어버리는 것들
 - 특정 파일의 Property 창 띄우기
 - Serialize를 이용한 객체 복사하기 (Copy constructor)
 - CWinThread로 UI Thread 만들기
 - Socket에서 완벽한 Receive처리
 - [API/SHELL] 디스크 복사 및 포맷...
 - [API/SHELL] 프로그램 추가 삭제 / 원도 구성 요소 추가 다이얼로그 띄우기
 - 원하는 확장자파일만 지우기
 - CEdit control의 font 바꾸기
 - 연결 프로그램 찾기 다이얼로그 띄우기
 - Visual Basicⓡ처럼 property 다루기
 - Func()
 - [ATL] 새로운 인터페이스 추가하기
 - 생성자 두 번 호출되는 버그
 - LastError를 보여주는 Debugging Trace Macro
 - 할당된 블록의 크기 구하기
 - [Win32/C++]템플릿을 이용한 동기화 클래스 만들기
 - Visual Studio Macro
 - auto_ptr
 - explicit
 - Unicode/MBCS(DBCS)/ANSI/TCHAR
 - String Conversion Macro
 - upper_bound/lower_bound
 - stringstream
 - CD Rom 드라이브 구하기
 - WebBrowser 로 부터 키보드 메세지 가로채기
 - CDROM Insertion / Removal 감지하기
 - 입력 컨트롤에서 허용하는 문자를 제한하려면
 - History ComboBox
 - HBITMAP을 BMP 파일로 만들어 주는 함수
 - FTP 로 파일 전송하기
 - ATL Browser - SmileBrowser v0.1
 - 레지스터 설명
 - 어셈블러 쉽게 쓴 강좌
 - 내가 만든 타입 자동으로 확장하기
 - watch 창에서 심볼의 출력 타입 정해주기
 - Thread 생성시 어떤 API를 사용해야 하는가?
 - LAN에 연결된 모든 스테이션에 broadcasting하기
 - ActiveX를 무조건 다운로드 하게 하기
 - ATL Debugging Support #1
 - 웹페이지가 이동될때 진입하는 함수
 - GetMessage() PeekMessage()
 - based addressing
 - 다이얼로그 리소스의 실제 크기 얻기
 - 문자열에서 드라이브,디렉토리,파일이름, 확장자 정보 가져오기
 - Bitmap 이미지 resizing 하기
 - 프로파일링(Profiling) 기능 활용하기
 - template으로 구조체 초기화 하기
 - 사용하지 않는 인자에 대한 warning 없애기
 - 포인터 변수를 검증하기위한 매크로
 - #define 보다는 const와 inline을 사용한다.
 - malloc과 free 보다는 new와 delete를 사용한다.
 - 메모리가 모자랄 경우에 대비한다.
 - operator new 와 operator delete 작성시 관례를 따른다.
 - 캐럿의 위치 알기
 - URL을 파싱하자
 - Lite control에서 이벤트가 가능하게 하기
 - 소스로 바로가는 TRACE
 - Watch 창에서 함수 실행하기
 - 파일로 트레이스 하도록 바꾸기 (3줄이면 됨)
 - MFC에서 NULL을 비교하는 것은 의미가 없다.
 - Floating-Point Error가 Exception을 발생하도록 만들기
 - First-chance exception 에서 Stop 하도록 만들기
 - exception 클래스 확장하기
 - INF file Architecture
 - GUID 생성하기
 - VC의 IDE를 편하게 쓰는 도구[1]
 - VC의 IDE를 편하게 쓰는 도구[2]
 - new의 정상 형식을 감추지 않는다.
 - operator new를 작성한다면 operator delete도 작성한다
 - 동적으로 할당되는 메모리를 갖는 클래스를 위해서는 복사 생성자와 치환 연산자를 선언하라.
 - 생성자에서 치환보다는 초기화를 사용한다.
 - 클래스에 선언된 순서에 따라 멤버 초기화 리스트에 멤버들을 나열한다
 - Edit 컨트롤에서 Tab 키 넣기
 - [VB] QueryInterface하는 방법
 - [ActiveX] VBScript에서는 QueryInterface가 않된다.
 - [ActiveX] VBScript에 User-Define Interface 노출하기
 - ATL 디버깅 정보 출력하기
 - [ActiveX] 키보드 메세지 받기
 - OLE Activation 될때 컨테이너의 툴바 살리기
 - 인터넷 Short-Cut 만들기
 - StrouStrup의 좋은 기사 3개 Link
 - WTL 3.1
 - WTL 도움말
 - CreateFile 이용시 주의사항
 - DLL 로드 시간 성능 최적화 하기
 - GUID를 문자열로... 문자열을 GUID로
 - 트레이 메뉴가 사라지지 않을때
 - 대용량의 파일 순식간에 읽기
 - Error LNK2001: '_WinMain@16': Unresolved External Symbol
 - Hatch 가 밀려나오는 브러시 수정하기
 - Brush 의 패턴을 사용하여 스킨 구현하기
 - ATL Object가 한글 폴더 있으면 등록 안되는 버그
 - ActiveX 컨트롤에서 사용할 디지털ID 발급 받는 방법
 - [VB] 패키지 마법사 최적화 하기
 - MFC 라이브러리에 동적으로 링크된 정규 DLL
 - 원격 디버깅 하기
 - 왼쪽에 이미지 들어가는 메뉴추가하기
 - 2000 에서 나오는 파일 저장 다이얼로그 사용하기
 - 콤보박스나 에디터 상자에서 입력 자동 완성 기능
 - 폴더내의 dll 한 번에 등록하기
 - 폴더 선택 다이얼로그 사용하기
 - 윈도우즈 작업 관리자 기능 살펴보기
 - Delayload 적용시키기 (매우 쉬움)
 - Dll Rebase 시키기 (역시 쉬움)
 - Win32 버퍼 오버플로어 관련 문서
 - local folder에 있는 dll 사용하게 만들기
 - ActiveX Control을 View에서 사용하기
 - Web으로부터 컨트롤을 다운받아서 실행하는 VC예제
 - 인터넷 익스플로어 제어와 관련된 Knowledge Base
 - w2k에서 Process Tree 보기
 - 줄번호 매겨주는 매크로 입니다.
 - DbgChooser from Bugslayer
 - 특정 컨트롤에서 한글을 입력받고 싶지 않을때
 - 홈페이지 소스 가져오기
 - OPCODE 설명서
 - ASCII 코드 설명서
 - inline assembly에서는 C++맴버변수로 접근 불가
 - Unicode Conversions in Visual C++
 - 실행 파일(바이너리)에서 파일 이름 가져오기
 - 디버깅 관련 KB(Knowledge Base) 모음집
 - 디버깅 관련 책 정보
 - Coding Techniques and Programming Practices
 - The Basics of Programming Model Design
 - [ActiveX] automation을 편하게 쓰는팁
 - IME 입력기 예제입니다.
 - 특정 DLL 을 사용하는 프로그램 알아보기
 - [ATL] 나한테 연결했나?
 - 인터넷에 연결되어 있는지 알아보기
 - 파일 사이즈 별로 단위를 나누어서 출력하기
 - 아스키 코드의 재미난 연산
 - 이런 코드는 피하고 싶다
 - 윈도우가 리사이즈될때 다시 그려야 하는 영역 얻기
 - Visual C++ 이 사용하는 확장자 살펴보기
 
- 
Advanced
 - 함수의 호출 규약에 대해서 알아봅시다
 - WaitCursor가 만들어지지 않는 경우
 - Capture가 되지 않는 경우
 - Queue를 함께 씁시다
 - SendMessage는 어떻게 작동하는가?
 - 친절한 메세지 ( benign message )
 - 복잡한 ActiveX Control 라이센스 간단히 얻기
 - LHCTRACE( light-weight!!!)
 - LHCTRACE
 - Advanced Breakpoint
 - DECLARE_DYNCREATE()와 IMPLEMENT_DYNCREATE()
 - TLS(Thread Local Storage)
 - CreateWindow()
 - Top 윈도우들의 핸들을 알수 없을까?
 - 호출 관행
 - C++에서 Internal Linkage를 갖는 몇 가지
 - 배경이 투명한 Bitmap 그리기
 - VC++에서 RTTI 사용하기
 - OLE를 이용한 Drag and Drop
 - 콜백함수의 구현
 - 프로세스의 초기화와 종료 기다리기
 - 향상된 RichEdit control (RICHEDIT20A)
 - PowerPoint 파일을 Image 파일로 변환하기
 - 실행파일 또는 DLL에서 파일버전 정보를 가져오는 방법
 - CEdit - 리소스에서 파일을 여는 방법
 - IPicture를 이용한 JPG, GIF, BMP, WMF, EMF, ICO 보기
 - Child윈도를 Popup시키는 방법
 - Set Next Statement 를 통해서 디버깅 하기
 - 스레드에 이름 지어주기
 - 툴바의 툴팁을 내가 원하는데로
 - 정렬과 탐색 루틴이 필요하신 분
 - 데이터 암호화 방법
 - Dialog Base에 UpdateCommandUI Handler를 달자.
 - Popup Menu에 UpdateCommandUI handler동작 시키기
 - 함수대신 function object를 대입하자
 - koenig lookup
 - Win32 multithreading Performance
 - 실행중인 자신의 파일의 fullpath를 정확히 알아내기
 - ATL에서 error LNK2001: unresolved external symbol _main 해결하기
 - Winsock 2.0 에 관련된 몇가지 것들
 - Winsock 2.0의 단점들
 - none MFC에서 memory leak난 부분 찾기
 - ATL - warning MIDL2039 의 버그
 - apartment간의 marshaling
 - apartment 모델에 관한 이야기
 - #File Error#
 - DLL 에 대해서 알아보자.
 - Simulating Dynamic Binding
 - HANDLE 의 정체!!
 - 특정 URL의 파일을 다운로드하기
 - dll을 모든 프로세스에 로드시키기
 - 특정 Port 가 사용중인지 알아보는 방법
 - 스택에 동적으로 메모리 할당하기
 - ActiveX 컨트롤로부터 URL 알아내기
 - 프로그램의 수행 속도를 개선하는 방법
 - 힙: 장점과 단점
 - socket을 옳바르게 닫기
 - release 에서 _set_new_handler() 가 동작하지 않는 경우
 - Windows Structured Exceptions을 C++ Exceptions로 바꾸기
 - if문을 사용한 경우와 Exception handling을 사용한 경우의 비교
 - dispinterface의 특성
 - 치명적인 오류가 발생하였을 때 프로그래머에게 알리기
 - API hooking ( Dll 바꿔치우기~)
 - 메모리 패킹
 - VC++ 에서 OCX 내의 함수 직접 호출하기
 - ActiveX 컨트롤 사용하지 않고 프로그램 실행하기
 - ActiveX 컨트롤 설치할때 inf 파일에서 dll 순서 중요
 - C 에서 최적화된 프로그램 만들기
 - regsvr32.exe 를 사용하여 ActiveX 컨트롤 등록시 주의점
 - PHP나 ASP 코드 직접 호출하기
 
2차 출처 : http://yagi815.tistory.com/505