Installatie van multi language packs via commandline in Windows 2008 R2/Windows 7

Na installatie van het OS, wat wij als IT-ers natuurlijk in het engels installeren, kan het voor komen dat je nog een extra taal wilt toevoegen. Nou kan dat via de GUI, maar dat wil je niet altijd. Het liefst zou je zien dat je deze via RES Automation Manager of een andere uitroltool geïnstalleerd kan krijgen.

Op de languagepack cd’s van Windows 2008 en Windows 7 vind je meerdere directories. Kies de directory met de taal die je wil installeren en neem hier de lp.cab uit. Deze kun je via de commandline installeren via lpksetup /i * /p [patch of/en bestandsnaam van de languagepack] /r /s

De switches achter lpksetup.exe dienen de volgende doelen:

/i Installeer een taal
/i *

/i [taalkeuze]

Installeer alle talen in het languagepack. Mocht je een languagepack hebben met meerdere talen dan kun je hier één selectie uit maken door bv. nl-NL te gebruiken ipv ster.
/p [path naar languagepack directory]

/p [path+bestandnaam van languagepack]

Path naar een directory met alle languagepacks die je wil installeren. Wil je maar één bepaalde languagepack installeren, dan moet je ook de bestandsnaam erbij plaatsen
/r Geen reboot op het einde van de installatie
/s Stille installatie

Let er bij het gebruik van een languagepack op, dat je versie van Windows wel meerdere talen ondersteund. Installeer je een languagepack op een Windows versie die geen multi-language ondersteund, dan wordt de hoofdtaal van die installatie overschreven!

Na installatie van een languagepack heb je via de GUI de mogelijkheid om de taal in te stellen voor de gebruiker en voor het systeem. Bij Terminal Servers (of Citrix XenApp) wil je in de meeste gevallen dat bij een Nederlands bedrijf Nederlands de standaard taal wordt voor gebruikers en voor het OS/System account.

Dit kun je via de volgende commandline doen: control.exe intl.cpl,,/f:”[path naar configuratie.xml]”

Het configuratiebestand moet er voor Nederlands als volgt uitzien:

<gs:GlobalizationServices xmlns:gs=”urn:longhornGlobalizationUnattend”>

<!– user list –>
  <gs:UserList>
    <gs:User UserID=”Current” CopySettingsToDefaultUserAcct=”true” CopySettingsToSystemAcct=”true”/>
  </gs:UserList>

<!– GeoID –>
  <gs:LocationPreferences>
    <gs:GeoID Value=”176″/>
  </gs:LocationPreferences>

<!– UI Language Prefernces –>
  <gs:MUILanguagePreferences>
    <gs:MUILanguage Value=”nl-NL”/>
    <gs:MUIFallback Value=”en-US”/>
  </gs:MUILanguagePreferences>

<!– system locale –>
  <gs:SystemLocale Name=”nl-NL”/>
<!– user locale –>

<gs:UserLocale>
   <gs:Locale Name=”nl-NL” SetAsCurrent=”true” ResetAllSettings=”false”>
   </gs:Locale>
</gs:UserLocale>

</gs:GlobalizationServices>

Dit configuratie bestand zorgt ervoor dat de taal van de huidige user op Nederlands wordt gezet en dat de regionale instellingen worden gekopieerd naar het default-user profiel en naar het systeem account. De regionale instellingen worden zelf niet ingesteld (dit kan wel) en ook de toetsenbord instelling wordt niet aangepast. De instellingen worden na een reboot aktief op de machine.

Voor meer opties en meer uitleg over de opbouw van het xml-bestand kun je terecht op: