Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Lokalisering är processen för att göra ditt program lämpligt för en specifik kultur. Den här processen omfattar översättning av användargränssnittstext (UI) till ett regionspecifikt språk, med rätt datum- och valutaformatering, justering av storleken på kontroller i ett formulär och speglingskontroller från höger till vänster om det behövs.
När du lokaliserar ditt program skapas en eller flera satellitsammansättningar. Varje sammansättning innehåller användargränssnittssträngar, bilder och andra resurser som är specifika för en viss kultur. (Programmets huvudsakliga körbara fil innehåller strängarna för standardkulturen för ditt program.)
Det här avsnittet beskriver tre sätt att distribuera ett ClickOnce-program för andra kulturer:
Inkludera alla satellitsammansättningar i en enda distribution.
Generera en distribution för varje kultur, med en enda satellitsammansättning som ingår i varje.
Ladda ned satellitsammansättningar på begäran.
Inkludera alla satellitsammansättningar i en distribution
I stället för att publicera flera ClickOnce-distributioner kan du publicera en enda ClickOnce-distribution som innehåller alla satellitsammansättningar.
Den här metoden är standard i Visual Studio. Om du vill använda den här metoden i Visual Studio behöver du inte utföra något ytterligare arbete.
Om du vill använda den här metoden med MageUI.exemåste du ange kulturen för ditt program till neutral i MageUI.exe. Därefter måste du inkludera alla satellitsammansättningar manuellt i distributionen. I MageUI.exekan du lägga till satellitsammansättningarna med hjälp av knappen Fyll i på fliken Filer i programmanifestet.
Fördelen med den här metoden är att den skapar en enda distribution och förenklar din lokaliserade distributionshistoria. Vid körning används lämplig satellitsammansättning, beroende på standardkulturen för användarens Windows-operativsystem. En nackdel med den här metoden är att den laddar ned alla satellitsammansättningar när programmet installeras eller uppdateras på en klientdator. Om ditt program har ett stort antal strängar, eller om dina kunder har en långsam nätverksanslutning, kan den här processen påverka prestanda under programuppdateringen.
Anmärkning
Den här metoden förutsätter att programmet justerar kontrollernas höjd, bredd och position automatiskt så att de passar olika textsträngsstorlekar i olika kulturer. Windows Forms innehåller en mängd olika kontroller och tekniker som gör att du kan utforma formuläret så att det enkelt kan lokaliseras, inklusive FlowLayoutPanel kontrollerna och TableLayoutPanel samt AutoSize egenskapen. Se även Så här: Stöd för lokalisering i Windows-formulär med hjälp av AutoSize och TableLayoutPanel-kontrollen.
Generera en distribution för varje kultur
I den här distributionsstrategin genererar du flera distributioner. I varje distribution inkluderar du bara den satellitsammansättning som behövs för en specifik kultur och du markerar distributionen som specifik för den kulturen.
Om du vill använda den här metoden i Visual Studio anger du egenskapen Publicera språk på fliken Publicera till önskad region. Visual Studio inkluderar automatiskt den satellitsammansättning som krävs för den region du väljer och utesluter alla andra satellitsammansättningar från distributionen.
Anmärkning
I ClickOnce för .NET Core 3.1 och .NET 5 eller senare anger du distributionsegenskaper med verktyget Publicera i stället för publiceringsguiden och sidan Publicera i Projektdesignern. Mer information finns i Distribuera ett .NET Windows-program med ClickOnce och ClickOnce för .NET.
Du kan göra samma sak med hjälp av verktygetMageUI.exe i Microsoft Windows Software Development Kit (SDK). Använd knappen Fyll på fliken Filer i programmanifestet för att undanta alla andra satellitsammansättningar från programkatalogen och ange sedan fältet Kultur på fliken Namn för distributionsmanifestet i MageUI.exe. De här stegen omfattar inte bara korrekt satellitmontering, utan de anger även attributet för elementet assemblyIdentity i distributionsmanifestet till den motsvarande kulturen.
När du har publicerat programmet måste du upprepa det här steget för varje ytterligare kultur som programmet stöder. Du måste se till att du publicerar till en annan webbserverkatalog eller filresurskatalog varje gång, eftersom varje programmanifest refererar till en annan satellitsammansättning och varje distributionsmanifest har ett annat värde för language attributet.
Ladda ned satellitsammansättningar på begäran
Om du väljer att inkludera alla satellitsammansättningar i en enda distribution kan du förbättra prestandan med nedladdning på begäran, vilket gör att du kan markera sammansättningar som valfria. De markerade sammansättningarna laddas inte ned när programmet installeras eller uppdateras. Du kan installera sammansättningarna när du behöver dem genom att anropa DownloadFileGroup metoden i ApplicationDeployment klassen.
Anmärkning
Klassen ApplicationDeployment och API:erna System.Deployment.Application i namnområdet stöds inte i .NET Core- och .NET 5- och senare versioner. I .NET 7 stöds en ny metod för att komma åt egenskaper för programdistribution. Mer information finns i Access ClickOnce distributionsegenskaper i .NET. .NET 7 stöder inte motsvarigheten till ApplicationDeployment-metoder.
Nedladdning av satellitsammansättningar på begäran skiljer sig något från att ladda ned andra typer av sammansättningar på begäran. Mer information och kodexempel om hur du aktiverar det här scenariot med hjälp av Windows SDK-verktygen för ClickOnce finns i Genomgång: Ladda ned satellitsammansättningar på begäran med ClickOnce Deployment API.
Du kan också aktivera det här scenariot i Visual Studio. Mer information finns i Genomgång: Ladda ned satellitsammansättningar på begäran med ClickOnce-distributions-API:et med hjälp av designern.
Testa lokaliserade ClickOnce-program före distribution
En satellitsammansättning används endast för ett Windows Forms-program om CurrentUICulture egenskapen för programmets huvudtråd är inställd på satellitsammansättningens kultur. Kunder på lokala marknader kommer förmodligen redan att köra en lokaliserad version av Windows med sin kultur inställd på lämplig standard.
Du har tre alternativ för att testa lokaliserade distributioner innan du gör ditt program tillgängligt för kunder:
Du kan köra ditt ClickOnce-program på lämpliga lokaliserade versioner av Windows.
Du kan ange egenskapen CurrentUICulture programmatiskt i ditt program. (Den här egenskapen måste anges innan du anropar Run metoden.)