Share via


Lokalizace aplikací ClickOnce

Lokalizace je proces vytvoření aplikace vhodné pro konkrétní jazykovou verzi. Tento proces zahrnuje překlad textu uživatelského rozhraní (UI) do jazyka specifického pro konkrétní oblast, použití správného formátování data a měny, úpravu velikosti ovládacích prvků ve formuláři a zrcadlení ovládacích prvků zprava doleva, pokud je to potřeba.

Lokalizace aplikace vede k vytvoření jednoho nebo více satelitních sestavení. Každé sestavení obsahuje řetězce uživatelského rozhraní, obrázky a další prostředky specifické pro danou jazykovou verzi. (Hlavní spustitelný soubor vaší aplikace obsahuje řetězce pro výchozí jazykovou verzi vaší aplikace.)

Toto téma popisuje tři způsoby nasazení aplikace ClickOnce pro jiné jazykové verze:

  • Zahrňte všechna satelitní sestavení do jednoho nasazení.

  • Vygenerujte jedno nasazení pro každou jazykovou verzi s jedním satelitním sestavením, které je součástí každé verze.

  • Stáhněte si satelitní sestavení na vyžádání.

Zahrnutí všech satelitních sestavení do nasazení

Místo publikování více nasazení ClickOnce můžete publikovat jedno nasazení ClickOnce, které obsahuje všechna satelitní sestavení.

Tato metoda je výchozí v sadě Visual Studio. Pokud chcete tuto metodu použít v sadě Visual Studio, nemusíte provádět žádnou další práci.

Chcete-li tuto metodu použít s MageUI.exe, je nutné nastavit jazykovou verzi aplikace na neutrální v MageUI.exe. Dále musíte do nasazení ručně zahrnout všechna satelitní sestavení. V MageUI.exe můžete satelitní sestavení přidat pomocí tlačítka Naplnit na kartě Soubory manifestu aplikace.

Výhodou tohoto přístupu je, že vytvoří jedno nasazení a zjednodušuje váš lokalizovaný scénář nasazení. V době běhu se použije odpovídající satelitní sestavení v závislosti na výchozí jazykové verzi operačního systému Windows uživatele. Nevýhodou tohoto přístupu je, že stáhne všechna satelitní sestavení při každé instalaci nebo aktualizaci aplikace na klientském počítači. Pokud má vaše aplikace velký počet řetězců nebo vaši zákazníci mají pomalé síťové připojení, může tento proces ovlivnit výkon během aktualizace aplikace.

Poznámka:

Tento přístup předpokládá, že aplikace automaticky upraví výšku, šířku a pozici ovládacích prvků tak, aby vyhovovaly různým velikostem textových řetězců v různých jazykových verzích. model Windows Forms obsahuje celou řadu ovládacích prvků a technologií, které vám umožní navrhnout formulář tak, aby byl snadno lokalizovatelný, včetně ovládacích FlowLayoutPanel prvků AutoSize a TableLayoutPanel vlastností. Viz Také viz Postupy: Podpora lokalizace ve formulářích Windows pomocí autoSize a TableLayoutPanel ovládacího prvku.

Generování jednoho nasazení pro každou jazykovou verzi

V této strategii nasazení vygenerujete více nasazení. V každém nasazení zahrnete pouze satelitní sestavení potřebné pro konkrétní jazykovou verzi a nasazení označíte jako specifické pro danou jazykovou verzi.

Chcete-li použít tuto metodu v sadě Visual Studio, nastavte vlastnost Publish Language na kartě Publish na požadovanou oblast. Visual Studio automaticky zahrne satelitní sestavení požadované pro zvolenou oblast a vyloučí ze nasazení všechna ostatní satelitní sestavení.

Poznámka:

V clickOnce pro .NET Core 3.1 a .NET 5 nebo novější nastavíte vlastnosti nasazení pomocí nástroje Publikovat místo průvodce publikováním a stránky Publikovat v Návrháři projektů. Další informace naleznete v tématu Nasazení aplikace .NET pro Windows pomocí Technologie ClickOnce a ClickOnce pro .NET.

Totéž můžete provést pomocí nástroje MageUI.exe v sadě Microsoft Windows Software Development Kit (SDK). Pomocí tlačítka Naplnit na kartě Soubory manifestu aplikace vyloučíte všechna ostatní satelitní sestavení z adresáře aplikace a pak nastavte pole Culture na kartě Název manifestu nasazení v MageUI.exe. Tyto kroky zahrnují nejen správné satelitní sestavení, ale také nastaví language atribut prvku assemblyIdentity v manifestu nasazení na odpovídající jazykovou verzi.

Po publikování aplikace musíte tento krok zopakovat pro každou další jazykovou verzi, kterou vaše aplikace podporuje. Musíte se ujistit, že pokaždé publikujete do jiného adresáře webového serveru nebo do adresáře sdílené složky, protože každý manifest aplikace bude odkazovat na jiné satelitní sestavení a každý manifest nasazení bude mít pro atribut jinou hodnotu language.

Stahování satelitních sestavení na vyžádání

Pokud se rozhodnete zahrnout všechna satelitní sestavení do jednoho nasazení, můžete zvýšit výkon stažením na vyžádání, což vám umožní označit sestavení jako volitelná. Označená sestavení nebudou stažena při instalaci nebo aktualizaci aplikace. Sestavení můžete nainstalovat, když je potřebujete, voláním DownloadFileGroup metody ve ApplicationDeployment třídě.

Poznámka:

Třída ApplicationDeployment a rozhraní API v System.Deployment.Application oboru názvů nejsou podporovány v .NET Core a .NET 5 a novějších verzích. V .NET 7 se podporuje nová metoda přístupu k vlastnostem nasazení aplikace. Další informace naleznete v tématu Access ClickOnce vlastnosti nasazení v .NET. .NET 7 nepodporuje ekvivalent metod ApplicationDeployment.

Stahování satelitních sestavení na vyžádání se mírně liší od stahování jiných typů sestavení na vyžádání. Další informace a příklady kódu o tom, jak tento scénář povolit pomocí nástrojů sady Windows SDK pro ClickOnce, naleznete v tématu Návod: Stahování satelitních sestavení na vyžádání pomocí rozhraní API pro nasazení ClickOnce.

Tento scénář můžete také povolit v sadě Visual Studio. Další informace naleznete v tématu Návod: Stahování satelitních sestavení na vyžádání pomocí rozhraní API nasazení ClickOnce pomocí Návrháře.

Testování lokalizovaných aplikací ClickOnce před nasazením

Satelitní sestavení se použije pro model Windows Forms aplikaci pouze v případě, že CurrentUICulture vlastnost hlavního vlákna aplikace je nastavena na jazykovou verzi satelitního sestavení. Zákazníci na místních trzích už pravděpodobně budou používat lokalizovanou verzi Windows s jazykovou verzí nastavenou na odpovídající výchozí verzi.

Než aplikaci zpřístupníte zákazníkům, máte tři možnosti pro testování lokalizovaných nasazení:

  • Aplikaci ClickOnce můžete spustit v odpovídajících lokalizovaných verzích Windows.

  • Vlastnost můžete nastavit CurrentUICulture programově v aplikaci. (Tato vlastnost musí být nastavena před voláním Run metody.)