回帰を実行するためにCTESTでCMAKEを使用しています。私のアプリケーションは、環境によって提示されるエンコーディングを出力するコンソールアプリです(Tclの機能)。
Visual Studioに、アプリケーションを実行するときにutf-8環境で実行するように指示するにはどうすればよいですか。現在、私の回帰結果はラテン語でエンコードされており、Linuxビルドの回帰と比較するのは困難です。
回帰を実行するためにCTESTでCMAKEを使用しています。私のアプリケーションは、環境によって提示されるエンコーディングを出力するコンソールアプリです(Tclの機能)。
Visual Studioに、アプリケーションを実行するときにutf-8環境で実行するように指示するにはどうすればよいですか。現在、私の回帰結果はラテン語でエンコードされており、Linuxビルドの回帰と比較するのは困難です。
stdout / stderrストリームはUnicodeをサポートしていないため、VisualStudioにはプロセスからUnicode出力を受信する方法がありません。これは、VS2005でUnicodeサポートを実装するときにMSが回避しなければならなかった問題でした。このブログ投稿を参照してください。つまり、cl.exeは一連のパイプを使用して、ユニコード出力をVisualStudioコンソールウィンドウに書き込みます。
ラッパーは、プロセスの出力をシステムコードページに変換するか、cl.exeで使用されるUnicodeパイプを開いてそれらに書き込む方法を理解することができます。