【问题标题】:tell visual studio to create a utf-8 environment when running executables告诉 Visual Studio 在运行可执行文件时创建一个 utf-8 环境
【发布时间】:2010-11-14 22:18:31
【问题描述】:

我正在使用带有 CTEST 的 CMAKE 来运行我的回归。我的应用程序是一个控制台应用程序,它以环境呈现的任何编码输出(Tcl 的一个特性)。

我如何告诉 Visual Studio 在运行我的应用程序时在 utf-8 环境中运行它。现在我的回归结果是用拉丁文编码的,因此很难与我的 linux 版本上的回归进行比较。

【问题讨论】:

  • 我想我只需要在一个包装脚本中手动创建一个 utf-8 环境来获取所需的脚本。
  • 您的意思是“呈现”而不是“阻止”?

标签: windows visual-studio unicode cmake regression


【解决方案1】:

stdout/stderr 流不支持 unicode,因此 Visual Studio 无法从您的进程接收 unicode 输出。这是 MS 在 VS 2005 中实现 Unicode 支持时必须解决的问题,请参阅this blogpost。简而言之,cl.exe 使用一组管道将 unicode 输出写入 Visual Studio 控制台窗口。

您的包装器可以将您的进程的输出转换为系统代码页,或者弄清楚如何打开 cl.exe 使用的 Unicode 管道并改为写入它们。

【讨论】:

    猜你喜欢
    • 2011-09-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-03
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多