Jump to content

XPP SP2 - Regional Settings (Canadian)


Recommended Posts

I'm transitioning the unattended from SP1 to SP2 (XP Pro in both cases) and i'm cleaning up the "Regional Settings" a bit as the current settings allow for erroneous input languages and skew some of the regional standards/formats, such as short/long dates.

The goal is to only have the following locale/keyboard layouts installed:

1. English (Canada) - US

2. French (Canada) - Canadian Multilingual Standard

Unfortunately, I can't seem to get this configured properly in winnt.sif.

The closest I can get is:

[unattended]

KeyboardLayout="Canadian English (Multilingual)"

[RegionalSettings]

InputLocale=1009:0409,0c0c:11009

InputLocale_DefaultUser=1009:0409,0c0c:11009

LanguageGroup=1,2,3,4,5,6

SystemLocale=1009

UserLocale=1009

UserLocale_DefaultUser=1009

Unfortunately, while it technical achieves the config i'm looking for it also includes "Canadian French" as a keyboard layout under the "English (Canada)" locale, which seems odd. I suspect this is caused by the "KeyboardLayout" definition under the "[unattended]" section being "Multilingual". But, there's no strictly "Canadian English" options (non-multilingual) and if I remove the setting entirely then "English (United States)" pops back by default, which I don't want for the above reasons.

So, any help here would be appreciated.

Link to comment
Share on other sites


Try omitting Keyboardlayout and you can stop EN US from installing:

http://www.msfn.org/board/index.php?showtopic=62785

You don't need LanguageGroup=1,2,3,4,5,6.

LanguageGroup=1 should suffice.

Why would you want English (Canada) - US and not just English (Canada)? Is there any difference?

The ref.chm only mentions KeyboardLayout = Us, do you have a reference for the others?

Edited by Takeshi
Link to comment
Share on other sites

Thanks for replying Takeshi.

Try omitting Keyboardlayout and you can stop EN US from installing:

If I omit the "KeyboardLayout" definition from the "[unattended]" section of winnt.sif then, as per ref.chm, "setup detects and installs a keyboard layout", which happens to be "English (United States) - US". I'm trying to eliminate the US locale. I will try applying the "hack" posted by chiners_68.

Why would you want English (Canada) - US and not just English (Canada)? Is there any difference?
Because as far as I can see, a "Canadian English" keyboard layout does not exist. With the "KeyboardLayout" set to "Canadian English (Multilingual)" the installed keyboard layouts are "Canadian French" and "Canadian Multilingual Standard". Both layouts include characters I do not desire in the standard layout. My hope is that combining the "English (Canada)" locale with the "US" keyboard layout would allow me to maintain Canadian regional standards (ie: date format) but with a strictly English keyboard layout. Make sense?
The ref.chm only mentions KeyboardLayout = Us, do you have a reference for the others?

Actually, ref.chm states "this entry must match one of the right-hand strings (in quotation marks) in the [Keyboard Layout] section of TxtSetup.sif". Looking at txtsetup.sif, the only Canadian options are:

00001009 = "Canadian English (Multilingual)"

00000C0C = "Canadian French"

00010C0C = "Canadian French (Multilingual)"

It would be nice if there was a "Canadian English". :)

Link to comment
Share on other sites

I did a bit more testing today and here's what I found:

I omitted the "KeyboardLayout" definition from the "[unattended]" section and included the following:

[RegionalSettings]

LanguageGroup=1,2,3,4,5,6

InputLocale=1009:0409,0c0c:11009

InputLocale_DefaultUser=1009:0409,0c0c:11009

SystemLocale=1009

UserLocale=1009

UserLocale_DefaultUser=1009

This gives me:

English (Canada) - US

English (United States) - US

French (Canada) - Canadian Multilingual Standard

Almost there, I just need to scrap the US local/input language entry. I tried the "hack" that you referenced to remove the US presence but it didn't work as intended because I had more then two locales installed. While it did remove US it also broke French. In the particular reg key I had

1=00001009

2=00000409

3=00000c0c

You can't break the numerical order, so I actually need to end up with:

1=00001009

2=00000c0c

On Monday, I will add these settings to my registry config that's applied during cmdlines.txt. I can't believe how foolish it's been to get this up an running. Provided this actually works with the unattended, I will only cross to my fingers that the same config works with sysprep. From what I can see, it looks like the problem is that English (Canada) is properly defined/implemented. By default, English (Canada) uses the "Canadian Multilingual Standard" keyboard layout, which includes french characters (ie: / types as é). The only way to fix it is to pair the English (Canada) locale with the US keyboard layout.

Link to comment
Share on other sites

Try this:

InputLocale=1009:1009,0c0c:11009

My txtsetup.sif doesn't have a [Keyboard Layout] section, that's why I asked.

SystemLocale=1009 should take care of date formatting for Canada.

The localID reference on MS website is not exhaustive. You might like to experiment a bit more. But keep it as simple as possible.

Link to comment
Share on other sites

Try this:

InputLocale=1009:1009,0c0c:11009

My txtsetup.sif doesn't have a [Keyboard Layout] section, that's why I asked.

SystemLocale=1009 should take care of date formatting for Canada.

The localID reference on MS website is not exhaustive. You might like to experiment a bit more. But keep it as simple as possible.

Odd, the txtsetup.sif include on the XPP SP2 disc I used does contain a [Keyboard Layout] section.

Anyway, I went through ~8 different configs of the regional settings in winnt.sif and including what you suggested (InputLocale=1009:1009,0c0c:11009) with no "KeyboardLayout" specified. That still put the "Canadian French" keyboard layout under the "English (Canada)" locale. Not what I want.

I removed the "KeyboardLayout" definition from the "[unattended]" and i'm no longer getting french or multilingual keyboards under the english locales. Yay. A small win. The offshoot is that "English (US)" locale is back, which I understand is default behaviour that can be avoided via winnt.sif confg. Here's what I had in winnt.sif:

[RegionalSettings]

LanguageGroup=1,2,3,4,5,6

InputLocale=1009:0409,0c0c:11009

InputLocale_DefaultUser=1009:0409,0c0c:11009

SystemLocale=1009

UserLocale=1009

UserLocale_DefaultUser=1009

I then used the hack you linked to to remove the US locale. For "Default User" the registry looked like this before applying the hack (#2 is the offending entry):

[HKEY_CURRENT_USER\Keyboard Layout\Preload]

"1"="00001009"

"2"="00000409"

"3"="00000c0c"

I already have a .reg that I import during execution of cmdlines.txt, so I just added the following to configure "Default User":

[HKEY_CURRENT_USER\Keyboard Layout\Preload]

"1"="00001009"

"2"="00000c0c"

"3"=-

Much to my satisfaction, when the install finished I was left with the following:

English (Canada) - US

French (Canada) - Canadian Multilingual Standard

Unfortunately, it turns out that "Canadian Multilingual Standard" did not have an appropriate keyboard layout. Looking at the available keyboard layouts (microsoft.com/globaldev) the "Canadian French" layout is more applicable, so I swapped 0c0c:11009 for 0c0c:1009. My winnt.sif now contains this:

[RegionalSettings]

LanguageGroup=1,2,3,4,5,6

InputLocale=1009:0409,0c0c:11009

InputLocale_DefaultUser=1009:0409,0c0c:11009

SystemLocale=1009

UserLocale=1009

UserLocale_DefaultUser=1009

With winnt.sif configured as such + the hack, "Default User" is configured as I would like with support for "English (Canada) - US" and "French (Canada) - Canadian French".

Now to try this with sysprep.inf and see what mini-setup thinks. ;)

Link to comment
Share on other sites

I still don't understand why there's a need to use:

LanguageGroup=1,2,3,4,5,6

as this installs most languages of Europe.

LanguageGroup=1 already covers Eng and French.

* Western Europe and United States (1)

* Central Europe (2)

* Baltic (3)

* Greek (4)

* Cyrillic (5)

* Turkic (6)

By default, English (Canada) uses the "Canadian Multilingual Standard" keyboard layout, which includes french characters (ie: / types as é).

...

Unfortunately, it turns out that "Canadian Multilingual Standard" did not have an appropriate keyboard layout. Looking at the available keyboard layouts (microsoft.com/globaldev) the "Canadian French" layout is more applicable, so I swapped 0c0c:11009 for 0c0c:1009.

I suspect your physical keyboard is laid out differently.

On my keyboard (bought in Vancouver) it is the standard US keyboard and the / key certainly types / whether I use En (Canada) or En (US) or En (UK). The / key is at the bottom row immediately to the left of the right SHIFT key (the same with the UK keyboard for this key). So my solution above should work on my keyboard.

Edited by Takeshi
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...