Windows 공용 컨트롤에 대한 빌드 요구 사항

MFC(Microsoft Foundation Class) 라이브러리는 Windows 공용 컨트롤을 지원합니다. 공용 컨트롤은 Windows에 포함되며 라이브러리는 Visual Studio에 포함됩니다. MFC 라이브러리는 기존 클래스를 향상시키는 새로운 메서드와 Windows 공용 컨트롤을 지원하는 추가 클래스 및 메서드를 제공합니다. 애플리케이션을 빌드할 때는 다음 섹션에 설명된 컴파일 및 마이그레이션 요구 사항을 따라야 합니다.

컴파일 요구 사항

지원되는 버전

MFC는 모든 버전의 공용 컨트롤을 지원합니다. Windows 공용 컨트롤 버전에 대한 자세한 내용은 공용 컨트롤 버전을 참조 하세요.

지원되는 문자 집합

Windows 공용 컨트롤은 ANSI 문자 집합이 아닌 유니코드 문자 집합만 지원합니다. 명령 줄에서 애플리케이션을 빌드할 때는 다음 정의 컴파일러 옵션(/D)을 모두 사용해서 기본 문자 집합으로 유니코드를 지정합니다.

/D_UNICODE /DUNICODE

Visual Studio IDE(통합 개발 환경)에서 애플리케이션을 빌드하는 경우 프로젝트 속성의 일반 노드에 있는 문자 집합 속성의 유니코드 문자 집합 옵션을 지정 합니다.

마이그레이션 요구 사항

Visual Studio IDE를 사용하여 Windows 공용 컨트롤을 사용하는 새 MFC 애플리케이션을 빌드하는 경우 IDE는 자동으로 적절한 매니페스트를 선언합니다. 그러나 Visual Studio 2005 이전 버전에서 기존 MFC 애플리케이션을 마이그레이션하고 공용 컨트롤을 사용하려는 경우 IDE는 애플리케이션을 업그레이드하기 위해 매니페스트 정보를 자동으로 제공하지 않습니다. 대신 미리 컴파일된 헤더 파일에 다음 소스 코드를 수동으로 삽입해야 합니다.

#ifdef UNICODE
#if defined _M_IX86
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='x86' publicKeyToken='6595b64144ccf1df' language='*'\"")
#elif defined _M_IA64
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='ia64' publicKeyToken='6595b64144ccf1df' language='*'\"")
#elif defined _M_X64
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='amd64' publicKeyToken='6595b64144ccf1df' language='*'\"")
#else
#pragma comment(linker,"/manifestdependency:\"type='win32' name='Microsoft.Windows.Common-Controls' version='6.0.0.0' processorArchitecture='*' publicKeyToken='6595b64144ccf1df' language='*'\"")
#endif
#endif

참고 항목

일반 MFC 항목
계층 구조 차트
사용되지 않는 ANSI API