Visual Studio には「開発者コマンドプロンプト(Developer Command Prompt for VS)」が用意されています。
これは、C++ コンパイラ(cl.exe)や MSBuild、ILDasm、CorFlags などの開発ツールをコマンドラインから使えるようにする特別な環境です。
ただし難点があります。
-
毎回スタートメニューから「開発者コマンドプロンプト」を開くのが面倒
-
PowerShell を普段使いしていると、わざわざ別ウィンドウを立ち上げなければならない
そこで今回は 開発者コマンドプロンプトの環境設定を PowerShell に取り込む方法を紹介します。
1. 開発者コマンドプロンプトの正体
実は「開発者コマンドプロンプト」の正体は、Visual Studio がインストールされているフォルダにある VsDevCmd.bat というバッチファイルです。
例(Visual Studio 2022 の場合):
これを実行すると、PATH や INCLUDE、LIB などの環境変数が自動的に設定され、コマンドラインから開発ツールが利用できるようになります。
2. PowerShell から VsDevCmd.bat を呼び出す
PowerShell から直接このバッチファイルを呼び出すことも可能です。
方法 1:毎回手動で呼び出す
ただし、これは新しい cmd.exe を開いてしまうため、PowerShell の中では使えません。
3. 環境変数を PowerShell に取り込む
本当に便利に使うには、バッチファイルで設定される環境変数を PowerShell に引き継ぐ必要があります。
以下のスクリプトを PowerShell プロファイル($PROFILE)に追記すると便利です。
これで、PowerShell 上で次のように入力すれば:
cl.exe や msbuild、ildasm などがそのまま PowerShell から使えるようになります。
4. 使い勝手をさらに良くする
-
Visual Studio のバージョンごとに関数を作る
-
Enter-VS2022 -
Enter-VS2019
-
-
自動実行する
-
プロファイルに
Enter-VSDevShellを書いておけば、PowerShell 起動時に自動的に開発者環境がロードされる
-
まとめ
-
開発者コマンドプロンプトの正体は
VsDevCmd.bat -
これを PowerShell から呼び出して環境変数を取り込めば、いつもの PowerShell を「開発者コマンドプロンプト化」できる
-
これでビルドやツール操作がよりスムーズに!