15

次の違いは何ですか:

  • VsDevCmd.bat(VS2012 の開発者コマンド プロンプト)
  • vcvarsall.bat(VS2012 x86\x64\ARM Native\Cross Tools コマンド プロンプト)

vcvarsall.bat以前の多くのバージョンの Visual Studio の一部であった ため、かなりよく理解しています。vcvarsall.bat技術的にはVisual C++の一部ですが、.NETプロジェクトをビルドするときでも、基本的にMsBuildのgotoツールでした。

私がよく理解していないのはVsDevCmd.bat. VS2012 で新しくなったようで、その目的がわかりません。vcvarsall.batVisual C++ フォルダーのようではなく、Visual Studio Tools フォルダーにあることに気付きました。このツールで .NET msbuilds を実行する必要がありますか? もしそうなら、どうすれば同じ種類の x64\x86\ARM のデフォルトを設定できvcvarsall.batますか?

4

1 に答える 1

6

私の理解と VS2012 のさまざまなバッチ スクリプトを見てから:

x86 で呼び出された vcvarsall.bat (またはオプションなしの vcvarsall.bat のみ、デフォルトで x86) は、VsDevCmd.bat と同じです。x86 オプションで渡されたときに vcvarsall.bat が呼び出すバッチ ファイルは次のとおりです。

C:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin\vcvars32.bat

このファイルは、次の場所にある VsDevCmd.bat ファイルと同じです。

C:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\Tools\VsDevCmd.bat

これは、スタート メニューから開いたときに開発者コマンド プロンプトが呼び出すものです。

したがって、プラットフォームをより詳細に制御するには、適切なオプション (x86 または amd64 または arm または x86_amd64 または x86_arm) を渡して vcvarsall.bat を呼び出すことをお勧めします。

于 2013-05-20T22:48:49.733 に答える