Udostępnij za pośrednictwem


Wymagania dotyczące kompilacji dla wspólnych kontrolek systemu Windows

Biblioteka klasy Microsoft Foundation (MFC) obsługuje typowe kontrolki systemu Windows. Wspólne kontrolki są dołączone do systemu Windows, a biblioteka jest zawarta w programie Visual Studio. Biblioteka MFC udostępnia nowe metody, które rozszerzają istniejące klasy oraz dodatkowe klasy i metody, które obsługują typowe kontrolki systemu Windows. Podczas tworzenia aplikacji należy postępować zgodnie z wymaganiami dotyczącymi kompilacji i migracji opisanymi w poniższych sekcjach.

Wymagania dotyczące kompilacji

Obsługiwane wersje

Usługa MFC obsługuje wszystkie wersje wspólnych kontrolek. Aby uzyskać informacje o wersjach kontrolek wspólnych systemu Windows, zobacz Typowe wersje kontrolek.

Obsługiwane zestawy znaków

Kontrolki Wspólne systemu Windows obsługują tylko zestaw znaków Unicode, a nie zestaw znaków ANSI. Jeśli skompilujesz aplikację w wierszu polecenia, użyj obu następujących opcji kompilatora definiowania (/D), aby określić Unicode jako podstawowy zestaw znaków:

/D_UNICODE /DUNICODE

Jeśli tworzysz aplikację w zintegrowanym środowisku projektowym programu Visual Studio (IDE), określ opcję Zestaw znaków Unicode właściwości Zestaw znaków w węźle Ogólne właściwości projektu.

Wymagania dotyczące migracji

Jeśli używasz środowiska IDE programu Visual Studio do kompilowania nowej aplikacji MFC korzystającej ze wspólnych kontrolek systemu Windows, środowisko IDE automatycznie deklaruje odpowiedni manifest. Jeśli jednak migrujesz istniejącą aplikację MFC z programu Visual Studio 2005 lub starszego i chcesz użyć wspólnych kontrolek, środowisko IDE nie dostarcza automatycznie informacji o manifeście w celu uaktualnienia aplikacji. Zamiast tego należy ręcznie wstawić następujący kod źródłowy do wstępnie skompilowanego pliku nagłówka:

#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

Zobacz też

Tematy ogólne dotyczące MFC
Wykres hierarchii
Przestarzałe interfejsy API ANSI