NWC Services Blog
Integration von Language Packs
In Windows 7 und Server 2008 R2 besteht die Möglichkeit, Sprachpakete - sogenannte Language Packs - in die Installationsquelldateien zu integrieren (bzw. bestand diese Möglichkeit auch bereits bei Vista und Windows Server 2008). Dies erlaubt die Nutzung einer einheitlichen Quellverzeichnis-Struktur für die Installation von Windows in sämtlichen benötigten Sprachen, was gerade für international agierende Konzerne, sehr vorteilhaft sein kann. Bei diesem Ansatz müssen Änderungen an den Quellen - wie die Integration neuer Treiber oder die Vorab-Installation von Patches und Hotfixes - nur einmalig an zentraler Stelle durchgeführt werden. Die geänderten Installations-Sourcen können dann im Netzwerk repliziert werden und stehen an allen Standorten konsistent zur Verfügung.
Im folgenden Beispiel, soll das deutsche Language Pack in die Quellen eines englischsprachigen Windows 7 Enterprise (x86) integriert werden. Benötigt werden:
- eine englischen Installations-DVD für Windows 7 Enteprise (im Beispiel wird die 32-Bit Version verwendet)
- ein installiertes "Windows Automated Installation Kit 2.0"
- das (auch von der Plattform passende - hier also die x86-Version) deutsche Language Pack (lp.cab) für Windows 7
Die Installation des Language Pack erfolgt folgendermaßen:
- Kopieren des Inhalts der englischen Windows 7 Installations-DVD in ein temporäres Verzeichnis auf der Festplatte, beispielsweise nach C:\TEMP\W7ENTX86EN. Falls die Dateien nach dem Kopiervorgang noch das Readonly-Attribut der DVD gesetzt haben, muss dieses entfernt werden, da es ansonsten im Folgenden zu Fehlern kommt.
- Öffnen einer administrativen Eingabe-Aufforderung für die WAIK-Tools. Dazu auf die Verknüpfung "Eingabeaufforderung für Bereitstellungstools" unter "Start | Alle Programme | Microsoft Windows AIK" per rechter Maustaste klicken und aus dem Kontextmenü "Als Administrator ausführen" wählen
- Eingabe von
DISM /mount-wim /wimfile:c:\temp\w7entx86en\sources\install.wim /index:1 /mountdir:c:\temp\mount
um das Installations-Image zu mounten - Hinzufügen des deutschen Language Packs (Annahme: wurde unter C:\TEMP\LPs\de-DE abgelegt) durch Eingabe von:
DISM /image:c:\temp\mount /add-package /packagepath:c:\temp\lps\de-de\lp.cab - Die erfolgreiche Integration kann nach Abschluss dieses Kommandos wie folgt geprüft werden:
DISM /image:c:\temp\mount /get-intl - Möchte man nun die gerade integrierte Sprache auch als Standard-Sprache verwenden, kann dies bereits in den Quellen über folgenden Befehl hinterlegt werden:
DISM /image:c:\temp\mount /Set-SKUIntlDefaults:de-DE - Hat die Integration geklappt und sind alle internationalen Einstellungen getroffen, können die Änderungen an den Installationsquelle gespeichert werden:
DISM /unmount-wim /mountdir:c:\temp\mount /commit
Wird dieses Quellverzeichnis nun für eine benutzereingriffsfreie Installation (beispielsweise über Enteo OSD) verwendet und in der XML-Steuerdatei bereits "Deutsch" als Installationssprache ausgewählt, so schlägt dies fehl! Das Setup bleibt mit dem üblichen Sprachauswahl-Dialog stehen. Dort kann nur "Englisch" ausgewählt werden, obwohl doch das deutsche Sprachpaket erfolgreich in die Quellen integriert und Deutsch dort sogar als Default-Sprache eingestellt wurde.
Ursache ist, dass das Windows Setup selbst die Information, welche Sprachen die Quelle enthält nicht aus der WIM-Datei bezieht, sondern aus einer kleinen INI-Datei "LANG.INI", die sich ebenfalls im "Sources"-Unterverzeichnis der Installations-DVD befindet. Darüber muss dem Setup-Programm bekannt gemacht werden, welche Sprachen das Setup verwenden kann.
Es handelt sich dabei zwar um eine "ganz normale" INI-Datei, die problemlos mit jedem Texteditor manuell bearbeitet werden kann, jedoch gibt es auch für diese Aufgabe einen DISM-Parameter, mit dem die Datei gemäß den Quellen erzeugt werden kann. Voraussetzung ist allerdings, dass das Installationsimage noch gemounted ist. Wenn Sie also bereits obigen Schritt 7 ausgeführt haben, müssen Sie das Image nochmals mounten:
- DISM /mount-wim /wimfile:c:\temp\w7entx86en\sources\install.wim /index:1 /mountdir:c:\temp\mount
- um dann mit folgenem Befehl die INI-Datei zu aktualisieren:
DISM /image:c:\temp\mount /gen-langini /distribution:c:\temp\w7entx86en
Vergessen Sie anschließend nicht, das Image wieder zu unmounten.
Nach dieser Aktion, können Sie auf Basis dieser Quellen, sowohl eine englische als auch eine deutsche Installation vornhemen.
Es wird aber darauf hingewiesen, dass es keinen Sinn macht, Sprachpakete "auf Verdacht" jeder Installationsquelle hinzuzufügen. Neben der enormen Größe der Installationsquellen, die dabei entsteht, hat dies auch negative Auswirkungen auf die Systemperformance der Zielsysteme und insbesondere auf die Installation von Patches und Service Packs. So schreibt Microsoft im Knowledgebase-Artikel 972813: "...Wenn Sie zahlreiche zusätzliche Sprachpakete installieren, kann sich das negativ auf den Festplattenspeicher und die Systemleistung auswirken. Besonders beeinträchtigt werden Festplattenspeicher und Systemleistung bei Wartungsvorgängen wie der Installation von Service Packs. Es wird daher empfohlen, einem Computer nur dann ein Sprachpaket hinzuzufügen, wenn es auch tatsächlich genutzt wird...".
When you subscribe to the blog, we will send you an e-mail when there are new updates on the site so you wouldn't miss them.
Comments 2
Kleines Update: Die Integration von MUI Paketen funktioniert auch mit Windows 8 und dem ADK 8 auf dem beschriebenen Weg problemlos.
Wichtiger Hinweis: offensichtlich ist es nicht möglich, nachdem ein Language Pack integriert wurde, das .NET Framework 3.5 unter Windows 8 hinzuzufügen (siehe http://msdn.microsoft.com/de-de/library/vstudio/hh506443.aspx). Das könnte ein guter Grund sein, unter Windows 8 auf das integrieren von Sprachpaketen zu verzichten.