Visual Studio のインストールに使用するコマンド ライン パラメーターの例

コマンド ライン パラメーターを使用して Visual Studio をインストールする方法を説明するため、いくつかの例を以下に示します。例は必要に応じてカスタマイズできます。

それぞれの例で、vs_enterprise.exevs_professional.exe、およびvs_community.exeは Visual Studio ブートストラップの各エディションを表します。ブートストラップは、ダウンロード プロセスを開始する小さな (1 MB 以下) ファイルです。 別のエディションを使用している場合は、適切なブートス トラップの名前に置き換えてください。

すべてのコマンドは、管理者特権で実行する必要があり、管理者のプロンプトからプロセスが開始されていない場合は、ユーザー アカウント制御の確認メッセージが表示されます。

コマンド ラインの末尾で ^ 文字を使用すると、複数行を連結して 1 行にすることができます。 または、これらのコマンドを 1 つの行に配置できます。 PowerShell の場合、バッククォート (`) 文字がこれに相当します。

コマンドラインを使用してインストールできるワークロードとコンポーネントの一覧は、「Visual Studio のワークロード ID とコンポーネント ID」ページをご覧ください。

ブートストラップで --installPath を使用してインストールする

  • 対話型プロンプトを使用せず、進行状況を表示して、Visual Studio の最小限のインスタンスをインストールする例です。

    vs_enterprise.exe --installPath C:\minVS ^
    --add Microsoft.VisualStudio.Workload.CoreEditor ^
    --passive --norestart
    
  • フランス語の言語パックを使用する Visual Studio のデスクトップ インスタンスをサイレント モードでインストールする例です。製品のインストールが終わるまでダイアログは表示されません。

    vs_enterprise.exe --installPath C:\desktopVS ^
    --addProductLang fr-FR ^
    --add Microsoft.VisualStudio.Workload.ManagedDesktop ^
    --includeRecommended --quiet --wait
    

更新

  • コマンド ラインを使用して Visual Studio インスタンスを更新すると、進行状況が表示され、対話型のプロンプトは表示されません。 クライアントまたはレイアウトにあるブートストラップを使用して、これらの一連のコマンドを 2 つの手順で実行できます。 最初のコマンドではクライアントのインストーラーを更新し、2 番目のコマンドでは Visual Studio 製品を更新します。 インストーラーを更新するには管理者権限が必要なため、これらのコマンドは管理者特権のコマンド プロンプトで実行する必要があります。 次の例では、レイアウトで Evergreen Bootstrapper を使用してクライアントの更新をシミュレートします。

    \\layoutserver\share\path\vs_enterprise.exe --update --quiet --wait
    \\layoutserver\share\path\vs_enterprise.exe update --wait --passive --norestart --installPath "C:\installPathVS"
    

クライアントのインストーラーを使用して、1 つの手順で Visual Studio インスタンスを更新することもできます。 Standard ユーザー、適切なアクセス許可付与されている場合は、インストーラーを使用してプログラムで更新コマンドを実行できますが、 --passive または --quiet スイッチの使用は許可されません。 インストーラが存在するのと同じディレクトリからは、プログラムでインストーラを開始できないことにご注意ください。

"C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe" update --passive --norestart --installPath "C:\installPathVS"

--wait の使用

  • バッチ ファイルまたはスクリプトの --wait を使用して、最初のコマンドが完了するのを待ってから次のコマンドを実行します。 バッチ ファイルの場合は、%ERRORLEVEL% 環境変数にコマンドの戻り値が含まれます (「コマンド ライン パラメーターを使用して Visual Studio をインストールする」ページを参照)。 一部のコマンド ユーティリティでは、完了を待ってインストーラーの戻り値を取得するには、その他のパラメーターが必要です。

--wait パラメーターはブートストラップでのみサポートされます。

start /wait vs_professional.exe --installPath "C:\VS" --passive --wait > nul
echo %errorlevel%

次のコマンドは、PowerShell スクリプト コマンド Start-Process--wait を使用する例です。

$process = Start-Process -FilePath vs_enterprise.exe -ArgumentList "--installPath", "C:\VS", "--passive", "--wait" -Wait -PassThru
Write-Output $process.ExitCode 

または

 $startInfo = New-Object System.Diagnostics.ProcessStartInfo
 $startInfo.FileName = "vs_enterprise.exe"
 $startInfo.Arguments = "--all --quiet --wait"
 $process = New-Object System.Diagnostics.Process
 $process.StartInfo = $startInfo
 $process.Start()
 $process.WaitForExit()
  • 最初の --wait は Visual Studio ブートストラップによって使用され、2 番目の -Wait は完了を待つために 'Start-Process' によって使用されます。 -PassThru パラメーターは、インストーラーの終了コードを戻り値として使用するために、Start-Process によって使用されます。

--Layout を使用してネットワーク レイアウトまたはローカル キャッシュを作成する

  • Visual Studio コア エディター (Visual Studio の最小限の構成) と英語言語パックのみを含むレイアウトを作成します。 その他のレイアウト作成の例については、「Visual Studio のネットワーク インストールを作成する」ページを参照してください。

    vs_professional.exe --layout "C:\VS" ^
    --lang en-US ^
    --add Microsoft.VisualStudio.Workload.CoreEditor ^
    

--all を使用して製品全体を取得する

  • Visual Studio Enterprise Edition で利用できるすべてのワークロードとコンポーネントの対話型インストールを開始します。

    vs_enterprise.exe --all
    

Using --includeRecommended

  • Visual Studio Community Edition が既にインストールされているコンピューターに、ニックネームを使って Visual Studio Professional の 2 つ目のインスタンスを Node.js 開発のサポートとともにインストールします。

    vs_professional.exe --installPath C:\VSforNode ^
    --add Microsoft.VisualStudio.Workload.Node --includeRecommended --nickname VSforNode
    

--channelURI の使用

最新のインストーラーを使用して、Visual Studio で更新プログラムを検索する場所を構成できます。 --channelUri は更新プログラム チャネルまたは更新プログラムのソースの場所とも呼ばれています。 次の表に、channelId と channelUri の値の例とその意味を示します。

チャンネル名 --channelUri --channelId
Visual Studio 2022 の現行チャンネル https://aka.ms/vs/17/release/channel VisualStudio.17.Release
Visual Studio 2022 17.0 LTSC チャンネル https://aka.ms/vs/17/release.LTSC.17.0/channel VisualStudio.17.Release.LTSC.17.0
Visual Studio 2022 プレビュー チャンネル https://aka.ms/vs/17/pre/channel VisualStudio.17.Preview
Visual Studio 2019 リリース チャンネル https://aka.ms/vs/16/release/channel VisualStudio.16.Release
Visual Studio 2017 リリース チャンネル https://aka.ms/vs/15/release/channel VisualStudio.15.Release
カスタム レイアウト - プライベート チャネル \\layoutserver\share\path\channelmanifest.json VisualStudio.17.Release (またはレイアウトのベースとなっているもの)

更新プログラム チャネルとしてカスタム レイアウトの使用を選択する場合、次のガイドラインに注意してください。

Using --remove

  • 既定でインストールされた Visual Studio のインスタンスから、プロファイル ツール コンポーネントを削除します。 この例では、クライアント コンピューターに既にインストールされているインストーラーを使います。 適切なアクセス許可 を持つ標準ユーザーは、インストーラーを使用してプログラムで変更コマンドを実行できますが、--passiveor--quiet スイッチの使用は許可されません。 インストーラが存在するのと同じディレクトリからは、プログラムでインストーラを開始できないことにご注意ください。

    "C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe" modify ^
    --installPath "C:\Program Files\Microsoft Visual Studio\2022\Enterprise" ^
    --remove Microsoft.VisualStudio.Component.DiagnosticTools ^
    --passive
    

--layout と同じコマンドで --remove を使用することはできません。 つまり、レイアウトからコンポーネントを削除することはできません。

--removeOos の使用

最新のインストーラーを使用して、インストールを変更し、既定でインストールされた Visual Studio インスタンスからサポート外の状態に移行したコンポーネントをすべて削除できます。 この例では、クライアント コンピューターに既にインストールされているインストーラーを使用して、removeOos 設定を構成します。 Standard ユーザー、適切なアクセス許可付与されている場合は、インストーラーを使用してプログラムで変更コマンドを実行できますが、 --passive または --quiet スイッチの使用は許可されません。 インストーラが存在するのと同じディレクトリからは、プログラムでインストーラを開始できません。

 "C:\Program Files (x86)\Microsoft Visual studio\Installer\setup.exe" modify ^
 --installPath "C:\Program Files\Microsoft Visual Studio\2022\Enterprise" ^
 --removeOos true ^
 --passive
  • 製品が更新されるたびに、サポート対象外の状態に移行したすべてのコンポーネントを永続的に削除するように更新プログラムの設定を調整します。

    "C:\Program Files (x86)\Microsoft Visual studio\Installer\setup.exe" modify ^
    --channelURI https://aka.ms/vs/17/release.LTSC.17.0/channel ^
    --productID Microsoft.VisualStudio.Product.Enterprise ^
    --newChannelURI \\layoutserver\share\path\channelmanifest.json ^
    --removeOos true ^
    --quiet  
    

Using --path

これらの例ではすべて、ブートストラップを使って新しい製品をインストールしているものとします。

  • install、cache、shared パスを使用する:

    vs_enterprise.exe --add Microsoft.VisualStudio.Workload.CoreEditor --path install="C:\VS" --path cache="C:\VS\cache" --path shared="C:\VS\shared"

  • install と cache パスのみを使用する:

    vs_enterprise.exe --add Microsoft.VisualStudio.Workload.CoreEditor --path install="C:\VS" --path cache="C:\VS\cache"

  • install と shared パスのみを使用する:

    vs_enterprise.exe --add Microsoft.VisualStudio.Workload.CoreEditor --path install="C:\VS" --path shared="C:\VS\shared"

  • install パスのみを使用する:

    vs_enterprise.exe --add Microsoft.VisualStudio.Workload.CoreEditor --path install="C:\VS"

export の使用

  • export を使って、インストールから選択したものを保存します。 この例では、クライアント コンピューターに既にインストールされているインストーラーを使います。

    "C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe" export --installPath "C:\VS" --config "C:\my.vsconfig"
    
  • export を使って、最初からカスタム選択を保存します。 この例では、クライアント コンピューターに既にインストールされているインストーラーを使います。

    "C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe" export --channelId VisualStudio.17.Release --productId Microsoft.VisualStudio.Product.Enterprise --add Microsoft.VisualStudio.Workload.ManagedDesktop --includeRecommended --config "C:\my.vsconfig"
    

--config の使用

  • --config を使用して、以前に保存したインストール構成ファイルからワークロードとコンポーネントをインストールする:

    vs_enterprise.exe --config "C:\my.vsconfig" --installPath "C:\VS"
    
  • --config を使って、ワークロードとコンポーネントを既存のインストールに追加します。 この例では、クライアント コンピューターに既にインストールされているインストーラーを使います。 適切なアクセス許可 を持つ標準ユーザーは、インストーラーを使用してプログラムで変更コマンドを実行できますが、--passiveor--quiet スイッチの使用は許可されません。 インストーラが存在するのと同じディレクトリからは、プログラムでインストーラを開始できません。

    "C:\Program Files (x86)\Microsoft Visual Studio\Installer\setup.exe" modify --installPath "C:\VS" --config "C:\my.vsconfig"
    
  • --config を使用して、レイアウトの内容を構成する:

    vs_enterprise.exe --layout C:\layout --config "C:\my.vsconfig" 
    

winget の使用

Windows パッケージ マネージャー "winget" ツールを使用して、コンピューター上で Visual Studio を winget によって管理される他のパッケージと共にプログラムでインストールまたは更新します。 インストールをカスタマイズし、他のワークロードとコンポーネントを指定するには、wingetの コマンドと--override共に winget のスイッチinstallを使用し、エクスポートされた vsconfig ファイルを次のように渡します。

winget install --id Microsoft.VisualStudio.2022.Community --override "--passive --config C:\my.vsconfig"

winget configure を使用して .yaml ファイルで受け渡しを行うことで、既存の Visual Studio インストールを変更することもできます。 この方法では、ここに記載されているVisual Studio PowerShell DSC プロバイダーを使用します。

サポートまたはトラブルシューティング

ときには、問題が発生してしまうことがあります。 Visual Studio のインストールが失敗した場合は、「Visual Studio のインストールとアップグレードの問題のトラブルシューティング」に記載されているステップ バイ ステップ ガイドをご覧ください。

他のいくつかのサポート オプションを次に示します。