Deploying Windows 7 Language Packs Using ConfigMgr & MDT
Not a huge amount of customers have a need for multi lingual support when looking at their operating system deployment. However when that need comes up I have experience customers which have either received incorrect information leading them to other solutions or implemented it wrong causing issues at build time. This guide looks at setting up multi lingual deployments with ConfigMgr 2012 and MDT 2012 using the UDI Wizard.
Before we look at the setup and what is required, the biggest question I get asked if of course where do you download the language packs from? The answer to this is to make sure you are logged into your MSDN Subscription in this case and download them from here. You can see on the page you will be looking at the two at the bottom for Windows 7. You can download both x86 and x64 versions.
Once they have downloaded, mount the ISO using your favourite tool and expand out the folder structure, find the language codes which you need. If you are not sure then you can find the codes used also on the MSDN Library. Create a folder called Windows 7 Language Packs for instance in your package library, create another folder called German for example and then copy over the folder with the country code and the lp.cab file underneath into this folder, using German as an example this would be de-de.
Next you need to make sure you have MDT 2012 installed and configured so we can use the extensions available in MDT to install the language packs in the task sequence. The next step is to create a new package in the ConfigMgr console, specify the package source as the folder where the country code can be found, for example: \\server\share$\Windows 7 Language Packs\German
Next we need to create an unattend file using Windows SIM which ships with WAIK. Open up your image, making sure you select the right architecture! Under Windows Image down the left hand side, expand Components and then right click x86_Microsoft-Windows-International-Core_6.1.7601.17514_neutral (or amd64_Microsoft-Windows-International-Core_6.1.7601.17514_neutral if you are using x64) and then drop it into pass 7 which is oobeSystem.
Once you have copied the settings shown above save your unattend file into your MDT Settings package or even create a new one if you wish. Remember these are architecture specific.
Next in an MDT task sequence, below the Apply Driver Package or Auto Apply Drivers step (whichever you are using) create a new group called Install Language Packs. Under here create a new group called German (or whichever language you are installing). Once this has been created, click Options on the step and then add a new task sequence variable condition. In our example we enter UILanguage as the variable and then the value as de-de. This means that from the UDI wizard when we select our locale settings this section is automatically executed depending on what the user has selected in the UDI wizard.
Under the German group we need two more steps, the first is just a simple Set Task Sequence Variable step which will set the variable OSDUILanguage to again de-de in this example. The final step is to enter a Install Language Packs Offline step from the MDT sub menu, this should then be pointed at the package containing our language pack file.
You should have something similar to what is shown in the screenshot above. All that is left now is to run your task sequence and after sysprep you should be prompted with this screen.