2

Можно ли сделать чтобы csc выдавал сообщения на английском?

  • Хм. Удалить локализованные ресурсы у компилятора? – VladD Jul 15 '15 at 13:44
  • 2
    Загляните в каталог %WINDIR%\Microsoft.NET\Framework\v4.0.30319. Каталоги типа 1031, de и de-DE содержат локализованные ресурсы. Попробуйте убрать их оттуда (лучше сохранить на всякий случай). – VladD Jul 15 '15 at 13:47
  • Вот так. То есть скачать языковой пакет с инглишем с микрософта. – Vesper Jul 15 '15 at 13:49
  • Нету какого-нибудь ключика для командной строки? – Smit Johnth Jul 15 '15 at 13:52
  • csc /? по поводу языка молчит как партизан – VladD Jul 15 '15 at 13:59
  • @VladD Есть, почему, /preferreduilang ключ, его можно поюзать. – Vesper Jul 15 '15 at 14:04
  • @Vesper у меня его нет. – Smit Johnth Jul 15 '15 at 14:05
  • @Vesper: Хм, и правда, есть, в секции advanced – VladD Jul 15 '15 at 14:14

2 Answers2

1

Нужно указать в списке параметров ключ /preferreduilang:en-us. Например, .\csc.exe /? /preferreduilang:en-us выводит справку по команде на английском языке. Доступно в версии 4.5, не раньше.

Vesper
  • 1,084
  • v4.0.30319: не работает – Smit Johnth Jul 15 '15 at 14:07
  • А у меня пашет, специально проверил. Windows 7 x64, csc x64 тоже, C:\Windows\Microsoft.NET\Framework\v4.0.30319> .\csc.exe /? /preferreduilang:en-us выдал мне справку на инглише. А у вас установлен language pack от инглиша? – Vesper Jul 15 '15 at 14:09
  • Кстати да, чтобы справку на английском вывести, нужно иметь папку 1033 в каталоге фреймворка. Если её нет, разговора не будет, будет использоваться дефолтная (нет языка - упсЪ). Сейчас проверил в программах - да, стоят две версии .NET 4.5.2, русская и английская. – Vesper Jul 15 '15 at 14:11
  • Установлен. Рядом есть мой ответ с вариантов который у меня заработал. Более того, у меня /? такого ключа не выдает (по хорошему надо было матюкнуться на это) – Smit Johnth Jul 15 '15 at 14:14
  • @SmitJohnth: Посмотрите в секции advanced, там у меня нашёлся. – VladD Jul 15 '15 at 14:15
  • @VladD смотрел грепом, не нашлось. windows xp 32 bit – Smit Johnth Jul 15 '15 at 14:16
  • @SmitJohnth: Ага, в этом может быть разница. Допишите системные требования в вопрос, чтобы не было путаницы. – VladD Jul 15 '15 at 14:17
  • А какой .NET стоит? 4.0 или 4.5? Папка одна и та же, что в 4.0, что в 4.5. – Vesper Jul 15 '15 at 14:17
  • @VladD насколько я понимаю, если не указаны требования, подразумевается маскимально широкая поддержка. Или это обязательно писать явно? – Smit Johnth Jul 15 '15 at 14:22
  • @SmitJohnth: Ну, если для старых версий нужен workaround, а старые работают «из коробки»... Например: thread в новом C++ — это просто std::thread, а в старом — BeginThreadEx или pthread_create или ещё как-нибудь там. – VladD Jul 15 '15 at 14:40
  • @VladD новых версий чего? У меня такой же framework v.4. Или нужно до 4.5 проапгрейдиться? – Smit Johnth Jul 15 '15 at 14:45
  • Кстати, сверьте, пожалуйста, какой билд указан у csc.exe, на котором нет такого пункта. А про 4.5 на ХР - Микрософт фигу показывает, к сожалению, – Vesper Jul 15 '15 at 14:47
  • @Vesper Microsoft (R) Visual C# 2010 Compiler version 4.0.30319.1 – Smit Johnth Jul 15 '15 at 14:48
  • Угу, 4.0 и без обновлений безопасности. Мда, печально, у меня вообще 4.5.2, и версия 4.0.30319.34238. И похоже, для винХР ответ "удалить другие языки" вполне подходит, остальным с установленным .NET 4.5 подходит мой. – Vesper Jul 15 '15 at 14:50
0

VladD подсказал:

Переименовываем/перемещаем из %WINDIR%\Microsoft.NET\Framework\v4.0.30319 все каталоги вида 1049, кроме 1033 (английская локализация), но это, конечно, костылик.

VladD
  • 206,799
  • В итоге для Windows XP и фреймворка ниже 4.5 другого варианта, похоже, не существует. – Vesper Jul 15 '15 at 14:51