Visual Studio.NET 2008 не дает мне сообщения об исключениях на английском языке - PullRequest
10 голосов
/ 02 марта 2009

В предыдущих версиях VS.NET или .NET Framework вы получали сообщения об исключениях на английском языке по умолчанию. Если вы установили «языковой пакет», вы получили сообщения об исключениях на языке этого языкового пакета.

Теперь я работаю с английской VS.NET 2008 (языковые пакеты не установлены) на голландской Windows Vista.

Когда я занимаюсь разработкой и пишу код, вызывающий исключение, полученное сообщение об исключении написано на голландском языке (язык моей ОС). Я не хочу, чтобы это было в голландском; Я хочу, чтобы это было на английском. (Причины очевидны: Google проще, а переведенные сообщения об ошибках - хрень).

В VS.NET мои международные настройки установлены на «Английский», в Windows Vista мои региональные настройки установлены на «Голландский / Бельгия». Как получить сообщения об исключениях на английском языке, не меняя ничего в соответствии с моими региональными настройками в Windows?

Ответы [ 4 ]

8 голосов
/ 02 марта 2009

После некоторого поиска в Stackoverflow и других сайтах в сети кажется, что Windows Vista решает, какие языковые пакеты следует установить, и, похоже, не было возможности удалить эти языковые пакеты (в XP это было возможно).

У меня нет Vista Ultimate (что позволило бы вам устанавливать несколько языковых пакетов рядом).

Итак, что я сделал сейчас, это:

Я создал пользовательский символ условной компиляции (DEVELOPER), и в моем приложении этот код:

#if DEVELOPER

Thread.CurrentThread.CurrentUICulture = CultureInfo.GetCultureInfo("en-us");

#endif

Мне просто нужно убедиться, что при создании приложения для развертывания я не включаю это условное определение ... (Но я легко могу это сделать, так как мое приложение находится под CI).

0 голосов
/ 05 января 2010

для .Net Framework доступны языковые пакеты практически для каждого языка.

Посмотрите, что вы найдете под установленным программным обеспечением, и удалите этот языковой пакет. Это приведет к тому, что VS2008 будет выводить сообщения об ошибках и т. Д. На английском языке.

0 голосов
/ 02 марта 2009

Thread.CurrentThread.CurrentUICulture зависит от языка вашей установленной ОС. Так что установка английской версии вашей ОС - ваш единственный выбор.

Или, как вы заявили, устанавливая Thread.CurrentThread.CurrentUICulture на «en-Us» в каждом приложении, которое вы кодируете, мне кажется довольно «неловким».

0 голосов
/ 02 марта 2009

Это (скорее всего), потому что у вас установлен голландский NetFX.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...