Dela via


Lägga till språk i en Windows 11 Enterprise-avbildning

Det är viktigt att se till att användare i din organisation från hela världen kan använda din Azure Virtual Desktop-distribution. Därför kan du anpassa den Windows 11 Enterprise-avbildning som du använder för dina virtuella datorer (VM) för att ha olika språkpaket. Från och med Windows 11 kan användarkonton som inte är administratör nu lägga till både visningsspråket och dess motsvarande språkfunktioner. Den här funktionen innebär att du inte behöver förinstallera språkpaket för användare i en personlig värdpool. För poolade värdpooler rekommenderar vi fortfarande att du lägger till de språk som du planerar att lägga till i en anpassad avbildning. Du kan använda anvisningarna i den här artikeln för både ensessionsversioner och flera sessioner av Windows 11 Enterprise.

När din organisation inkluderar användare med flera olika språk har du två alternativ:

  • Skapa en dedikerad värdpool med en anpassad avbildning per språk.
  • Ha flera användare med olika språk i samma värdpool.

Det andra alternativet är effektivare när det gäller resurser och kostnader, men kräver några extra steg. Lyckligtvis hjälper den här artikeln dig att skapa en avbildning som kan hantera användare av alla språk och lokaliseringsbehov.

Förutsättningar

Innan du kan lägga till språk på en virtuell Windows 11 Enterprise-dator måste du ha följande saker redo:

Kommentar

Filresurslagringsplatsen måste vara tillgänglig från den virtuella Azure-dator som du ska använda för att skapa den anpassade avbildningen.

Skapa en innehållslagringsplats för språkpaket och funktioner på begäran

Skapa innehållslagringsplatsen som du använder för att lägga till språk och funktioner i den virtuella datorn:

  1. Öppna den virtuella dator som du vill lägga till språk i i Azure.

  2. Öppna och montera ISO-filen som du laddade ned i avsnittet Krav ovan på den virtuella datorn.

  3. Skapa en mapp på filresursen.

  4. Kopiera allt innehåll från mappen LanguagesAndOptionalFeatures i ISO till mappen du skapade.

    Kommentar

    Om du arbetar med begränsad lagring kan du använda iso:et "Språk och valfria funktioner" som lagringsplats. Information om hur du skapar en lagringsplats finns i Skapa en anpassad FOD- och språkpaketlagringsplats.

    Viktigt!

    Vissa språk kräver ytterligare teckensnitt som ingår i satellitpaket som följer olika namngivningskonventioner. Till exempel inkluderar japanska teckensnittsfilnamn "Jpan".

    Ett exempel på de japanska språkpaketen med språktaggen

  5. Ange behörigheter för språkinnehållslagringsplatsens resurs så att du har läsbehörighet från den virtuella dator som du ska använda för att skapa den anpassade avbildningen.

Skapa en anpassad Windows 11 Enterprise-avbildning manuellt

Du kan skapa en anpassad avbildning genom att följa dessa steg:

  1. Distribuera en virtuell Azure-dator och gå sedan till Azure-galleriet och välj den aktuella versionen av Windows 11 Enterprise som du använder.

  2. När du har distribuerat den virtuella datorn ansluter du till den med RDP som lokal administratör.

  3. Anslut till filresurslagringsplatsen som du skapade i Skapa en innehållslagringsplats för språkpaket och funktioner på begäran och montera den på en bokstavsenhet (till exempel enhet E).

  4. Kör följande PowerShell-skript från en upphöjd PowerShell-session för att installera språkpaket och satellitpaket i Windows 11 Enterprise:

    ########################################################
    ## Add Languages to running Windows Image for Capture##
    ########################################################
    ##Disable Language Pack Cleanup##
    Disable-ScheduledTask -TaskPath "\Microsoft\Windows\AppxDeploymentClient\" -TaskName "Pre-staged app cleanup"
    Disable-ScheduledTask -TaskPath "\Microsoft\Windows\MUI\" -TaskName "LPRemove"
    Disable-ScheduledTask -TaskPath "\Microsoft\Windows\LanguageComponentsInstaller" -TaskName "Uninstallation"
    reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Control Panel\International" /v "BlockCleanupOfUnusedPreinstalledLangPacks" /t REG_DWORD /d 1 /f
    
    ##Set Language Pack Content Stores##
    $LIPContent = "E:"
    
    ##Set Path of CSV File##
    $CSVFile = "Windows-10-1809-FOD-to-LP-Mapping-Table.csv"
    $filePath = (Get-Location).Path + "\$CSVFile"
    
    ##Import Necesarry CSV File##
    $FODList = Import-Csv -Path $filePath -Delimiter ";"
    
    ##Set Language (Target)##
    $targetLanguage = "es-es"
    
    $sourceLanguage = (($FODList | Where-Object {$_.'Target Lang' -eq $targetLanguage}) | Where-Object {$_.'Source Lang' -ne $targetLanguage} | Select-Object -Property 'Source Lang' -Unique).'Source Lang'
    if(!($sourceLanguage)){
        $sourceLanguage = $targetLanguage
    }
    
    $langGroup = (($FODList | Where-Object {$_.'Target Lang' -eq $targetLanguage}) | Where-Object {$_.'Lang Group:' -ne ""} | Select-Object -Property 'Lang Group:' -Unique).'Lang Group:'
    
    ##List of additional features to be installed##
    $additionalFODList = @(
        "$LIPContent\Microsoft-Windows-NetFx3-OnDemand-Package~31bf3856ad364e35~amd64~~.cab", 
        "$LIPContent\Microsoft-Windows-MSPaint-FoD-Package~31bf3856ad364e35~amd64~$sourceLanguage~.cab",
        "$LIPContent\Microsoft-Windows-SnippingTool-FoD-Package~31bf3856ad364e35~amd64~$sourceLanguage~.cab",
        "$LIPContent\Microsoft-Windows-Lip-Language_x64_$sourceLanguage.cab" ##only if applicable##
    )
    
    $additionalCapabilityList = @(
     "Language.Basic~~~$sourceLanguage~0.0.1.0",
     "Language.Handwriting~~~$sourceLanguage~0.0.1.0",
     "Language.OCR~~~$sourceLanguage~0.0.1.0",
     "Language.Speech~~~$sourceLanguage~0.0.1.0",
     "Language.TextToSpeech~~~$sourceLanguage~0.0.1.0"
     )
    
     ##Install all FODs or fonts from the CSV file###
     Dism /Online /Add-Package /PackagePath:$LIPContent\Microsoft-Windows-Client-Language-Pack_x64_$sourceLanguage.cab
     Dism /Online /Add-Package /PackagePath:$LIPContent\Microsoft-Windows-Lip-Language-Pack_x64_$sourceLanguage.cab
     foreach($capability in $additionalCapabilityList){
        Dism /Online /Add-Capability /CapabilityName:$capability /Source:$LIPContent
     }
    
     foreach($feature in $additionalFODList){
     Dism /Online /Add-Package /PackagePath:$feature
     }
    
     if($langGroup){
     Dism /Online /Add-Capability /CapabilityName:Language.Fonts.$langGroup~~~und-$langGroup~0.0.1.0 
     }
    
     ##Add installed language to language list##
     $LanguageList = Get-WinUserLanguageList
     $LanguageList.Add("$targetlanguage")
     Set-WinUserLanguageList $LanguageList -force
    

    Kommentar

    Det här exempelskriptet använder språkkoden spanska (es-es). Om du vill installera lämpliga filer automatiskt för ett annat språk ändrar du parametern $targetLanguage till rätt språkkod. En lista över språkkoder finns i Tillgängliga språkpaket för Windows.

    Skriptet kan ta en stund att slutföra beroende på hur många språk du behöver installera. Du kan också installera ytterligare språk efter den första installationen genom att köra skriptet igen med en annan $targetLanguage parameter.

  5. Om du vill välja lämpliga installationsfiler automatiskt laddar du ned och sparar tabellen Tillgängliga Windows 10 1809-språk och funktioner på begäran som en CSV-fil och sparar den sedan i samma mapp som PowerShell-skriptet.

  6. När skriptet har körts kontrollerar du att språkpaketen har installerats korrekt genom att gå till Startinställningar>>tid och språkspråk.> Om språkfilerna finns där är du helt inställd.

  7. Slutligen, om den virtuella datorn är ansluten till Internet när du installerar språk, måste du köra en rensningsprocess för att ta bort onödiga språkupplevelsepaket. Kör följande kommandon för att rensa filerna:

    ##Cleanup to prepare sysprep##
    Remove-AppxPackage -Package Microsoft.LanguageExperiencePackes-ES_22000.8.13.0_neutral__8wekyb3d8bbwe
    
    Remove-AppxPackage -Package Microsoft.OneDriveSync_22000.8.13.0_neutral__8wekyb3d8bbwe
    

    Om du vill rensa olika språkpaket ersätter du "es-ES" med en annan språkkod.

  8. När du är klar med rensningen kopplar du från resursen.

Slutför anpassningen av avbildningen

När du har installerat språkpaketen kan du installera andra program som du vill lägga till i din anpassade avbildning.

När du är klar med att anpassa avbildningen måste du köra systemförberedelseverktyget (sysprep).

Så här kör du sysprep:

  1. Öppna en upphöjd kommandotolk och kör följande kommando för att generalisera avbildningen:

    C:\Windows\System32\Sysprep\sysprep.exe /oobe /generalize /shutdown
    
  2. Om du stöter på problem kontrollerar du filen SetupErr.log på C-enheten på Windows>System32>Sysprep>Panther. Därefter följer du anvisningarna i Sysprep misslyckas med Microsoft Store-appar för att felsöka konfigurationen.

  3. Om installationen lyckas stoppar du den virtuella datorn och avbildar den i en hanterad avbildning genom att följa anvisningarna i Skapa en hanterad avbildning av en generaliserad virtuell dator i Azure.

  4. Nu kan du använda den anpassade avbildningen för att distribuera en Azure Virtual Desktop-värdpool. Information om hur du distribuerar en värdpool finns i Självstudie: Skapa en värdpool med Azure Portal.

Kommentar

När en användare ändrar sitt visningsspråk måste de logga ut från sin Azure Virtual Desktop-session och sedan logga in igen. De måste logga ut från Start-menyn.

Nästa steg

Lär dig hur du installerar språkpaket för virtuella Windows 10-datorer med flera sessioner i Lägg till språkpaket i en Windows 10-avbildning med flera sessioner.

En lista över kända problem finns i Lägga till språk i Windows 10: Kända problem.