14

I installed the english version of Visual Studio 2013. The GUI is in English but compiler errors are in French. That's a nightmare when I want to Google an error...

How can I switch C# compiler output language to English ?

Guillaume
  • 12,824
  • 3
  • 40
  • 48
  • possible duplicate of [Changing MsBuild error message language](http://stackoverflow.com/questions/2286216/changing-msbuild-error-message-language) – bzlm Mar 20 '14 at 10:12
  • @bzlm I didn't had this issue with previous verions of VS/.Net and I'm not invoking msbuild on my own. I didn't install any language pack but it might be here and I don't know how to remove it. – Guillaume Mar 20 '14 at 10:25

3 Answers3

13

I have solved this as well. Switching language in the IDE did not worked for me, because if the MS compiler was invoked from another program (Qt Creator in my case), the language output was still in the locale language.

Solution: Remove the language you don't want from Visual Studio using the installation tool and leave only English. It's clean, you don't have to mess with the internal files and you even save some disk space.

Pat Long - Munkii Yebee
  • 3,592
  • 2
  • 34
  • 68
Nykodym
  • 131
  • 2
  • 5
12

You'd have to switch your machine's system locale to English, Control Panel + Language.

That's a rather impactful change since it also changes the locale for every other program on your machine. One thing you can try (but I cannot verify) is to whack the localization file that the C# compiler uses for strings. On your machine it should be located in c:\windows\microsoft.net\framework\v4.0.30319\1036\cscui.dll. Rename the file so the C# compiler can't find it and is forced to fallback to, hopefully, English. Btw, I guessed at 1036, there are lots of French locales. Locale IDs are listed here.

Hans Passant
  • 922,412
  • 146
  • 1,693
  • 2,536
  • Thanks! Renaming the file works for some errors but not all (ASPNETCOMPILER/CONFIG). I'll wait to see if someone comes with a better solution than switching locale but I doubt it... – Guillaume Mar 20 '14 at 10:43
  • 1
    Thanks for the suggestion. I just renamed the whole "1036" directory (added some XXX at the end) and it worked like a charm! Next invocation of csc was already in english. – Endrju May 21 '15 at 12:56
  • Hello! Another dumb solution is to search in directories c:\windows\microsoft.net\framework & c:\windows\microsoft.net\framework64 for "1036" and rename all occurencies. PS: You can find your locale in list like Hans Passant mentioned or just keep only 1033 which is English default – Deepscorn Jan 04 '16 at 22:13
7

Just solve same problem with Deutsch:) Do this: inside of Visual Studio:

Tools-->Options-->Environment-->International Settings. There you need to download an additional language(i.e. English) and install it.

oxidata
  • 71
  • 1
  • 1