Building new Windows XP images is still a requirement for many IT professionals. Many company s haven’t gone to Windows 7 and others are building MED-V Clients. Now, getting the region settings perfect in MDT can be frustrating and waste so much time.
I’ve seen this question posted in the forums so many times now, I just have to blog about it. I’ve seen people just give up and decide to use workarounds like reg hacks or custom scripts etc. After much testing here are my settings using MDT 2010:
In the CustomSettings.ini add:
In the Unattend.txt Modify these 3 lines:
Keyboardlayout = "United Kingdom" Language = 0809 ; language locale to be installed LanguageGroup = 2 ; Language Group to be installed
That’s it! Your region settings will look like this:
For those still interested (or are not in the UK), I spent 2 days testing various scenarios and here’s what I learned(some of you have probably learned this years ago, I certainly should have).
KeyboardLocale setting is only for Windows 7/Vista/2008
InputLocale=0809:00000809 is the correct setting for Windows XP
UserLocale=en-GB had no effect on Windows XP deployments during my tests
SystemLocale=0809:00000809 XP setting (in MDT 2010) that gets most of it done
By only using MDT though I could only get the Keyboard set and not remove the US so it looked like this:
Adding Keyboardlayout = “United Kingdom” to the unattend .txt will set the UK region from the outset so you don’t end up with the US Keyboard included.
I also couldn’t get the location set until I added both Language = 0809 and
LanguageGroup = 2 to the Unattend.txt.
In the [Windows XP Professional SP3 CD]\SUPPORT\TOOLS\DEPLOY.CAB there’s a help file called ref.chm which documents the unattend.txt settings and shows the syntax for the region codes. Also, I found this useful from Microsoft’s website KB 289125:
// The following settings are relevant for an Unattend.txt file when you configure Windows MultiLanguage version-related settings during an unattended installation:
Language = locale ID
LanguageGroup = language group ID, language group ID
SystemLocale = locale ID
UserLocale = locale ID
InputLocale = locale ID:keyboard layout ID, locale ID:keyboard layout ID
UserLocale_DefaultUser = locale ID
InputLocale_DefaultUser = locale ID:keyboard layout ID
Two settings are ignored in
Unattend.txt and Sysprep.inf, and are specific to computers that have the MultiLingual User Interface Packs installed. You can use these settings only by invoking the Regional and Language Options control panel applet in an unattended fashion:
IDMUILanguage_DefaultUser = language ID
Now, some commands can only be used in HEX and others in text. To explain this I created a table based on what I found in the manuals.
I’ve posted links for the region codes above to help with other country’s. Hopefully now, I’ll never see this question posted in the forums again or at least not so many reg hacks, custom scripts or workarounds..