0

回帰を実行するためにCTESTでCMAKEを使用しています。私のアプリケーションは、環境によって提示されるエンコーディングを出力するコンソールアプリです(Tclの機能)。

Visual Studioに、アプリケーションを実行するときにutf-8環境で実行するように指示するにはどうすればよいですか。現在、私の回帰結果はラテン語でエンコードされており、Linuxビルドの回帰と比較するのは困難です。

4

1 に答える 1

1

stdout / stderrストリームはUnicodeをサポートしていないため、VisualStudioにはプロセスからUnicode出力を受信する方法がありません。これは、VS2005でUnicodeサポートを実装するときにMSが回避しなければならなかった問題でした。このブログ投稿を参照してください。つまり、cl.exeは一連のパイプを使用して、ユニコード出力をVisualStudioコンソールウィンドウに書き込みます。

ラッパーは、プロセスの出力をシステムコードページに変換するか、cl.exeで使用されるUnicodeパイプを開いてそれらに書き込む方法を理解することができます。

于 2009-08-05T11:03:37.830 に答える