Visual Studio を探す
Visual Studio 2017 以降では、同じバージョンまたはエディションの複数のインスタンスをインストールできます。 これは、以前のインストールを維持しながら、プライマリ開発用コンピューターで新しい機能をプレビューする場合に便利です。 これらの変更のため、1 つの環境変数またはレジストリ値でインスタンスを検索することはできなくなっています。 代わりに、COM クエリ API を使用して、拡張機能に関連する条件に基づいてインスタンスを検索することができます。
これは、ネイティブ コードとマネージド コード用の NuGet パッケージで利用可能な高速で読み取り専用の API です。
コード | Package |
---|---|
ネイティブ | https://nuget.org/packages/Microsoft.VisualStudio.Setup.Configuration.Native |
マネージド | https://nuget.org/packages/Microsoft.VisualStudio.Setup.Configuration.Interop |
パスまたは現在のプロセスを指定して単一のインスタンスを検索することも、すべてのインスタンスを列挙することもできます。 Visual Studio を検索する方法の完全な例については、サンプルを参照してください。
ツール
ビルド環境、PowerShell スクリプト、インストーラー、その他のシナリオで Visual Studio やその他のツールを見つけるには、独自のスクリプトと共に直接または再配布して使用できるオープンソース ツールが多数あります。
プロジェクト | 説明 |
---|---|
vswhere | 単一ファイルのネイティブ実行可能ファイルで、リリースやプレリリース、インストールされている製品、インストールされているワークロードなどの条件を満たすインスタンスを検索します。 Visual Studio 2010 以降を検索することもできますが、Visual Studio 2017 以降では、より少ない情報が返されます。 例については、wiki を参照してください。 |
VSSetup コマンドレット | PowerShell コマンドレットは、インスタンスに関するさらに多くのプロパティを検出するために使用できるオブジェクトとして、2.0 以降でサポートされています。これにより、vswhere と同じ条件に基づいてインスタンスを検索でき、豊富な情報が返されます。 例については、wiki を参照してください。 |
VSIXBootstrapper | VSIXInstaller を自動的に検索し、コマンド ラインを渡して *.vsix ファイルをインストールします。 この機能は、クエリ API を直接サポートしていないインストーラーで役に立ちます。 例については、wiki を参照してください。 |