システム要件の検出
Visual Studio がインストールされていない場合、VSPackage は機能できません。 Microsoft Windows のインストーラーを使用して VSPackage のインストールを管理する場合、インストーラーを構成して、Visual Studio がインストールされているかどうかの検出が行われるようにすることができます。 また、Windows の特定バージョンや RAM の特定の容量など、他の要件についてシステムをチェックするように構成することもできます。
Visual Studio のエディションの検出
Visual Studio のあるエディションがインストールされているかどうかを確認するには、次の表に示すように、対応するフォルダー内の Install レジストリキーの値が "(REG_DWORD) 1" であることを確認します。 Visual Studio のエディションの階層があることに注意してください。
Enterprise
Professional
Community
新しいエディションがインストールされると、そのエディションだけでなく、以前のエディションのレジストリ キーも追加されます。 つまり、Enterprise エディションがインストールされている場合は、Enterprise だけでなく、Professional および Community エディションの Install キーも "1" に設定されます。 そのため、必要な最新のエディションのみをチェックする必要があります。
Note
64 ビット版のレジストリ エディターでは、32 ビットのキーは HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\ の下に表示されます。 Visual Studio のキーは、HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\DevDiv\vs\Servicing\ の下にあります。
Product | キー |
---|---|
Visual Studio Enterprise 2015 | HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DevDiv\vs\Servicing\14.0\enterprise |
Visual Studio Professional 2015 | HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DevDiv\vs\Servicing\14.0\professional |
Visual Studio Community 2015 | HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DevDiv\vs\Servicing\14.0\community |
Visual Studio 2015 Shell (Integrated および isolated) | HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\DevDiv\vs\Servicing\14.0\isoshell |
Visual Studio 実行中の検出
VSPackage がインストールされているときに、Visual Studio が実行されると、VSPackage を正しく登録できません。 Visual Studio が実行されているときは、インストーラーによって検出が行われ、その後、プログラムのインストールが拒否される必要があります。 Windows のインストーラーでは、このような検出を有効にするためにテーブル エントリを使用することはできません。 代わりに、次のように、カスタム アクションを作成する必要があります。EnumProcesses
関数を使用して devenv.exe プロセスを検出し、その後、起動条件で使用されるインストーラー プロパティを設定するか、または Visual Studio を閉じるようにユーザーに求めるダイアログ ボックスを条件付きで表示します。