2009-07-29 4 views
0

Я использую CMAKE с CTEST для запуска моих регрессий. Мое приложение представляет собой консольное приложение, которое выводит любую кодировку, которую представляет ее среда (функция Tcl).скажите визуальной студии, чтобы создать среду utf-8 при запуске исполняемых файлов

Как сообщить визуальной студии, что при запуске моего приложения для ее запуска в среде utf-8. Прямо сейчас результаты регрессии кодируются в латинском языке, и это затрудняет сравнение с регрессиями в моих потоках Linux.

+0

Я предполагаю, что мне просто нужно создать среду utf-8 вручную в сценарии оболочки, который выдает нужный сценарий. – Juan

+0

Вы имеете в виду «представленный» вместо «предотвращенный»? – JesperE

+0

исправил опечатку, спасибо. – Juan

ответ

1

Потоки stdout/stderr не поддерживают юникод, поэтому Visual Studio не имеет возможности получать Unicode-выход из вашего процесса. Это была проблема, с которой MS пришлось работать при внедрении поддержки Unicode в VS 2005, см. this blogpost. Короче говоря, cl.exe использует набор трубок для записи вывода unicode в окно консоли Visual Studio.

Ваша обертка может либо преобразовать выходные данные вашего процесса в системную кодовую страницу, либо выяснить, как открыть трубы Unicode, используемые cl.exe, и написать им вместо них.

 Смежные вопросы

  • Нет связанных вопросов^_^