Поделиться через


Требования к сборке для общих элементов управления Windows

Библиотека классов Microsoft Foundation (MFC) поддерживает общие элементы управления Windows. Общие элементы управления включены в Windows, а библиотека включена в Visual Studio. Библиотека MFC предоставляет новые методы, которые улучшают существующие классы, а также дополнительные классы и методы, поддерживающие Windows Common Controls. При создании приложения следует следовать требованиям к компиляции и миграции, описанным в следующих разделах.

Требования к компиляции

Поддерживаемые версии

MFC поддерживает все версии общих элементов управления. Сведения о версиях Общих элементов управления Windows см. в разделе "Общие версии элементов управления".

Поддерживаемые кодировки

Общие элементы управления Windows поддерживают только набор символов Юникода, а не набор символов ANSI. Если вы создаете приложение в командной строке, используйте оба из следующих параметров компилятора (/D), чтобы указать Юникод в качестве базового набора символов:

/D_UNICODE /DUNICODE

При создании приложения в интегрированной среде разработки Visual Studio укажите параметр "Набор символов Юникода" свойства "Набор символов" в узле "Общие" свойств проекта.

Требования к миграции

Если вы используете интегрированную среду разработки Visual Studio для создания нового приложения MFC, использующего Общие элементы управления Windows, интегрированная среда разработки автоматически объявляет соответствующий манифест. Однако если вы переносите существующее приложение MFC из Visual Studio 2005 или более ранней версии и хотите использовать общие элементы управления, интегрированная среда разработки не предоставляет автоматически сведения о манифесте для обновления приложения. Вместо этого необходимо вручную вставить следующий исходный код в предварительно скомпилированного файла заголовка:

#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
Диаграмма иерархии
Нерекомендуемые API ANSI