Lokalizované prostředky aplikací MFC: družicové knihovny DLL
Knihovna MFC 7.0 a novější rozšiřuje podporu pro satelitní knihovny DLL o funkce, které pomáhají při vytváření aplikací, které jsou lokalizovány pro více jazyků.Satelitní knihovna DLL je knihovna DLL, která obsahuje pouze prostředky aplikace, které jsou lokalizovány pro určitý jazyk.Jakmile se aplikace spustí, knihovna MFC automaticky načte lokalizované prostředky, které jsou nejvhodnější pro prostředí.Například můžete mít aplikaci s anglickými jazykovými prostředky se dvěmi satelitními knihovnami DLL, kde jedna obsahuje francouzský překlad zdrojů a druhá obsahuje německý překlad.Pokud je aplikace spuštěna v anglické verzi systému, používá anglické prostředky.Pokud je spuštěna na francouzském systému, používá francouzské prostředky; Pokud je spuštěna na německém systému, používá německé prostředky.
Pro podporu lokalizovaných prostředků v aplikaci knihovny MFC se knihovna MFC pokusí zavést satelitní knihovnu DLL, která obsahuje prostředky, které jsou lokalizovány do určitého jazyka.Satelitní knihovny DLL jsou pojmenovány jako NázevAplikaceXXX.dll, kde NázevAplikace je název souboru .exe nebo knihovny .dll, která používá knihovnu MFC a XXX je kód skládající se ze 3 písmen, která označují jazyk prostředků (například "ENU" nebo "DEU").
Knihovna MFC se pokusí načíst prostředky knihovny DLL pro každý z jazyků v následujícím pořadí a zastaví se, pokud jej nalezne:
(pouze systém Windows 2000 nebo novější) Výchozí jazyk uživatelského rozhraní pro aktuálního uživatele, který je vrácen z GetUserDefaultUILanguage() rozhraní API systému Win32.
(Windows 2000 nebo vyšší) Aktuální uživatel výchozí jazyk uživatelského rozhraní, bez jakékoli konkrétní dílčí jazyk (je ENC [Kanadské anglické] stane ENU [U.s. angličtina]).
Výchozí jazyk uživatelského rozhraní systému.V systému Windows 2000 nebo novějším je toto vráceno z GetSystemDefaultUILanguage() rozhraní API.Na ostatních platformách to je jazyk operačního systému.
Výchozí jazyk uživatelského rozhraní systému bez jakéhokoli konkrétního dílčího jazyka.
Falešný jazyk s 3 písmeným kódem LOC.
Pokud knihovna MFC nenajde žádné satelitní knihovny DLL, použije libovolné prostředky, které jsou obsaženy v samotné aplikaci.
Například Předpokládejme, že aplikace LangExample.exe MFC používá a se systémem Windows 2000 více uživatelského rozhraní; jazyk uživatelského rozhraní systému je ENU [U.s. angličtina] jazyk uživatelského rozhraní aktuálního uživatele nastaven na FRC [francouzština].Knihovna MFC hledá následující knihovny DLL v následujícím pořadí:
LangExampleFRC.dll (jazyk uživatelského rozhraní uživatele).
LangExampleFRA.dll (jazyk uživatelského rozhraní uživatele bez dílčího jazyka, v tomto příkladu francouzština (Francie).
LangExampleENU.dll (jazyk uživatelského rozhraní systému).
LangExampleLOC.dll.
Pokud není nalezena žádná z těchto knihoven DLL, knihovna MFC použije prostředky z LangExample.exe.
Viz také
Referenční dokumentace
TN057: Lokalizace součásti MFC