This behavior has been bugging me for ages. I live in Germany but I prefer my operating system and all installed applications to be in English.
So whenever I install a Windows system of mine, I install the English version thereof. I then change the location (Control Panel -> Clock, Language, and Region -> Change location) to "United States".

However, like 90% of the time, when I install an additional application (like VirtualBox for example), it will pick German as the default language. This behavior can be noticed all over the place.

The only way to change this is to change the Date and Time format. As soon as I change that to "English (United States)", all of the affected programs will use the English language. I can then even adjust the profile back to whatever I want (which is what I do) and I finally get the desired result.

Why does this happen? Are 90% of all programmers unable to use the right API to determine the users desired language? Is this the way default language should be determined under Windows? Am I just setting up my system incorrectly?

  • +1 for the question! I have the same problem in Spain - even Firefox add-ons goes to the Spanish language page. Changing time zone / location / language to UK does not seem to make a difference. (Win7)
    – BrianA
    Mar 1 '11 at 15:09
  • 1
    I think you hit the nail on the head with "90% of all programmers unable to use the right API". This is a quick, dirty, incredibly lazy way to guess language settings that's probably right 99% of the time.
    – Shinrai
    Mar 1 '11 at 15:37

Am I just setting up my system incorrectly?

In a way, yes. You certainly aren't reading the tab that you are looking at.

This is is a quick, dirty, incredibly lazy way to guess language settings that's probably right 99% of the time.

Wrong. The installer programs are using the Windows National Language Support API to obtain the system locale and language that you've configured, to determine what language to prompt you in. The locale information is set with the "Formats" tab in that part of Control Panel.

You're using the "Location" tab. Locations are different to locales and languages, not least because the .NET API for them doesn't really function on Windows prior to Windows NT version 6.1. The locations API is a completely different one, that doesn't even exist on Windows XP prior to Service Pack 3. Installer writers who want to have an installer that works on Windows NT prior to version 6.1 will use the locale API, because that's what exists and what works.

It's also what's right.

There's a difference between a geographic ID and a user interface language, and you're getting them exactly backwards. The location or geographic ID of a computer is where it physically is, and that's what you need to set on the "Location" tab in Control Panel. The UI language is the language that you want to see stuff shown to you in, and that's set in a combination of places elsewhere; including the locale settings that are set by the "Formats" tab in Control Panel.

It does say, at the very top of the "Location" tab, what it is for. Why do you think that setting your computer to obtain the "local information such as news and weather" for the United States, because you've told the system that you are physically located in the United States, is the right thing to do when you are physically located in Germany? Locate your machine where it physically is, and set the language and locale to the language and currency/number/date formatting that you want to see on the user interface.

In short: Nearly 100% of the programs from different vendors aren't operating as you think. It's your thinking that's wrong, not the programs.

  • Why is the format used for determine language? I have my OS set to English but the format set to Swedish. When installing new programs they default to Swedish. Is there no way to detect the OS language (win 7)?
    – tidbeck
    Jul 31 '12 at 12:32
  • 1
    So while the actual source of the problem lies within Windows using the geographic ID as language setting for the National Language Support API the App developers/publishers should have abandoned this API a long time ago and find other means to present language choice. So no, our thinking is not wrong, the software is. Physical location != preferred language - how hard can this be?
    – kluka
    Nov 10 '12 at 14:13
  • I totally agree and have the same problem. My system language is English, but date and time format are in German. Maybe it's just too complicated to have it that way. But then, I would again prefer English number format. In German, you use the comma (,) to separate decimals, while in English you use a point (.). Therefor, English has . on the numpad, German the ,. Swiss German again has a . there like English. This is probably where it get's too complicated. Where do you draw the line?
    – TJJ
    Feb 3 '16 at 22:52

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.