3

次のように、コマンド ラインからプロジェクトをコンパイルしようとしています。

devenv.exe myproj.sln /build release

コードはうまくコンパイルされているように見えますが、必要なのはそれだけではありません。

発生したコンパイラからの出力 (警告、エラーなど) をキャプチャできるようにしたいと考えています。残念ながら、上記のコマンドを発行するとすぐに、コマンド プロンプトに戻ります。

process-explorer または taskmgr.exe を見ると、devenv.exe プロセス (および他のいくつかのサブプロセス) が機能していないことがわかります。出力フォルダーを見ると、すべてのファイルが徐々に表示されていることがわかります。

VCC を GCC のようにもう少し機能させる方法はありますか?ビルド コマンドを発行するか、Makefile を使用してプロジェクトを作成すると、一連のメッセージが表示され、プロセスが完了するまでコンソールがブロックされます。

更新: ありがとう、2 つの優れたソリューション。動作確認できました。

4

2 に答える 2

10

devenv は、コマンド ライン モードとウィンドウ モードを切り替えるこの興味深いディスパッチャを使用します。実際には devenv.exe に加えて devenv.com があり、*.com が *.exe よりも優先されるため、最初に呼び出されます。devenv.com はコマンド ラインを分析し、何を呼び出すかを決定します。

つまり、コマンド ラインを次のように変更します。

devenv myproj.sln /build release

そして、あなたは大丈夫なはずです。

于 2009-01-16T11:24:56.160 に答える
9

devenv.exe の代わりに devenv.com を使用すると、必要なものが得られます。

その他のオプションについては、MSBuild.exe も使用できます。

于 2009-01-16T11:23:54.727 に答える