Search code examples
c#globalizationcultureinfo

Why is my CurrentCulture en-GB and my CurrentUICulture en-US


I have a C# application which has to run on machines with different culture settings. No problem I thought, it will just lookup on start up what the current culture is on the machine, and do everything for me. Well no, it would seam that something is not quite right.

I have a Windows XP machine with everything in Regional and Language options set to English US, yet when my application starts up it reports that my CurrentCulture is en-GB and my CurrentUICulture is en-US.

How can I get my program to just use whatever the PC is set to ?

This is a Windows Service application if it makes any difference.

Thanks


Solution

  • A Windows Service usually doesn't run under your UserAccount and then it doesn't matter what your regional settings are. It's about the regional settings of the System account. I'm guessing you run a en-GB version of Windows, and the system account still uses that.

    There are ways to get at that account, check SuperUser.