Partager via


Détecter les configurations requises

Un VSPackage ne peut pas s'exécuter sauf que Visual Studio est installé. Lorsque vous utilisez Microsoft Windows Installer pour gérer l'installation de votre VSPackage, vous pouvez détecter automatiquement si Visual Studio est installé. Le programme d'installation peut également activer le système pour d'autres impératifs, par exemple, une version de Windows particulière ou une quantité de mémoire vive particulière. Vous pouvez également configurer le programme d'installation pour utiliser des conditions de lancement pour annuler l'installation si les conditions d'un VSPackage ne sont pas satisfaites.

Clés de détection et de maintenance

Les sous-clés de détection du Registre vous permettent de déterminer si un produit Visual Studio est déjà installé sur un ordinateur. Les sous-clés de maintenance vous permettent de déterminer si un Service Release du produit est installé.

Le tableau suivant répertorie les sous-clés de détection des différents produits Visual Studio.

Dans ce tableau, LCID représente l'ID de paramètres régionaux de votre installation. Pour obtenir la liste des ID de paramètres régionaux valides, consultez ID de paramètres régionaux assignés par Microsoft (page éventuellement en anglais) sur le site Web MSDN.

Dans les sous-clés répertoriées, dword:00000001 signifie vrai et dword:00000000 signifie faux.

Produit

Clé

Visual Studio2010 final

HKEY_LOCAL_MACHINE \SOFTWARE\Microsoft\DevDiv\VS\Servicing\10.0\VSTSCore\$(Var.LCID)

Premium de Visual Studio2010

HKEY_LOCAL_MACHINE \SOFTWARE\Microsoft\DevDiv\VS\Servicing\10.0\VSTDCore\$(Var.LCID)

Professional Studio2010 visuel

HKEY_LOCAL_MACHINE \SOFTWARE\Microsoft\DevDiv\VS\Servicing\10.0\PROCore\$(Var.LCID)

Shell Microsoft VisualStudio 2010 (intégré)

HKEY_LOCAL_MACHINE \SOFTWARE\Microsoft\DevDiv\VS\Servicing\10.0\IntShell\$(Var.LCID)

Notes

Sur un système d'exploitation Windows 64 bits, les clés démarrent comme suit : HKEY_LOCAL_MACHINE \SOFTWARE\Wow6432Node\Microsoft\DevDiv\VS\Servicing \ 10,0 \

Détecter les versions antérieures de Visual Studio

Plusieurs versions de Visual Studio peuvent être installées sur le même ordinateur. Pour plus d'informations, consultez Plusieurs versions de prise en charge de Visual Studio.

Pour détecter des versions de Visual Studio , utilisez les identificateurs composants suivants dans le tableau de CompLocator de votre package Windows Installer.

Lignes de table de CompLocator

Signature_

ComponentID

Type

CL_Devenv_2002

{} 0C4A71DF-5A73-11D3-A520-00A0C9231BA1

1

CL_Devenv_2003

{} 153B059B-B2F4-4B54-9AC3-32BE38E470E1

1

CL_Devenv_2005

{} 320DB690-7979-4015-BD78-A16D7279043B

1

CL_Devenv_2008

{} 9E43F3BB-E7AE-4A97-ACF6-FB864533CC7E

1

Utilisez le tableau d'AppSearch pour connecter les colonnes de Signature_ dans le tableau de CompLocator aux valeurs de propriété, comme suit.

Lignes de table d'AppSearch

Property

Signature_

DEVENV_COMP_2002

CL_Devenv_2002

DEVENV_COMP_2003

CL_Devenv_2003

DEVENV_COMP_2005

CL_Devenv_2005

DEVENC_COMP_2008

CL_Devenc_2008

Les valeurs des colonnes de propriété et de Signature_ peuvent être tous les noms, mais les valeurs de Signature_ dans les tableaux de CompLocator et d'AppSearch doivent correspondre. La propriété liée à votre localisateur composant est NULL si la version appropriée de Visual Studio n'est pas installée. Si la propriété est NULL, les conditions testées par rapport à la propriété sont réalisées.

Détecter des langages de programmation Visual Studio

Si votre VSPackage a besoin d'un langage de programmation particulier de Visual Studio, utilisez les lignes suivantes de CompLocator et AppSearch approprié des lignes pour déterminer si le langage est installé pour les versions spécifiques de Visual Studio.

Le tableau de CompLocator les lignes pour déterminer si Visual c# est installé

Signature_

ComponentID

Type

CL_VCsharp_2002

{} B881292C-F099-11D4-A547-0090278A1BB8

1

CL_VCsharp_2003

{} 6110A574-76CE-45A5-92E8-2E194F20BBF7

1

CL_VCsharp_2005

{} 727833BC-8B4B-4480-B34A-B1A17CFF259B

1

CL_VCSharp_2008

{} 8D70EE8E-1638-40C2-921B-28E52A68A986

1

CL_VCSharp_2010

{} D3246EF0-4F4E-4F81-B4FF-8C716EC0A929

1

Le tableau de CompLocator les lignes pour déterminer si Visual C++ est installé

Signature_

ComponentID

Type

CL_VCpp_2002

{} 00E21CF5-5361-11D3-A51F-00A0C9231BA1

1

CL_VCpp_2003

{} 1E8D5C4E-0143-4871-9E7E-F04EEF70C3E0

1

CL_VCpp_2005

{} 28A38374-4A68-4562-9AF3-5D7BB96B0461

1

CL_VCpp_2008

{} 35DF9D40-8283-4661-B572-F7EACCAB287C

1

CL_VCpp_2010

{} 82D71315-B841-492E-986E-2660ABD89CD1

1

Le tableau de CompLocator les lignes pour déterminer si Visual Basic est installé

Signature_

ComponentID

Type

CL_VBasic_2002

{} 62EDCDC9-69F4-11D3-A521-00A0C9231BA1

1

CL_VBasic_2003

{} 667F7FE3-3165-41C4-9CF9-F2719ADF0505

1

CL_VBasic_2005

{} F5FDD145-7637-4CA7-90FE-6936A082CEDB

1

CL_VBasic_2008

{} F59EAFC0-6C67-40F2-AE59-85E4CE330A4E

1

CL_VBasic_2010

{} 235875C7-333C-4186-A46F-064431527642

1

Détecter des éditions de Visual Studio

Votre de commande fonctionnent de chargement de package applique l'édition minimum dont Visual Studio votre VSPackage a besoin, mais vous pouvez également détecter l'édition à l'installation. Pour plus d'informations, consultez VSPackage Load Keys.

Notes

Visual Studio VSPackages 2010 n'ont pas besoin de commande fonctionnent de chargement de package.

Empêcher un VSPackage d'être installé et d'afficher un message explicatif fournit une meilleure expérience utilisateur qu'en laissant le VSPackage est installé et ne pas fonctionner sur. Utilisez les lignes de table de RegLocator et les lignes de table d'AppSearch pour permettre à Windows Installer pour définir les propriétés que vous pouvez utiliser dans les tests conditionnels.

Le tableau de RegLocator les lignes pour détecter des éditions de Visual Studio

Signature_

Root

Clé

Nom

Type

RL_2002_Professional

2

SOFTWARE \Microsoft\VisualStudio\7.0\Setup\VS\Pro

ProductDir

0

RL_2002_Enterprise

2

SOFTWARE \Microsoft\VisualStudio\7.0\Setup\VS\Ent

ProductDir

0

RL_2003_Professional

2

SOFTWARE \Microsoft\VisualStudio\7.1\Setup\VS\Pro

ProductDir

0

RL_2003_EnterpriseDeveloper

2

SOFTWARE \Microsoft\VisualStudio\7.1\Setup\VS\Ent

ProductDir

0

RL_2003_EnterpriseArchitect

2

SOFTWARE \Microsoft\VisualStudio\7.1\Setup\VS\Arch

ProductDir

0

RL_2005_Standard

2

SOFTWARE \Microsoft\VisualStudio\8.0\Setup\VS\Std

ProductDir

0

RL_2005_Professional

2

SOFTWARE \Microsoft\VisualStudio\8.0\Setup\VS\Pro

ProductDir

0

RL_2005_TeamArchitect

2

SOFTWARE \Microsoft\VisualStudio\8.0\Setup\VS\VSTA

ProductDir

0

RL_2005_TeamDeveloper

2

SOFTWARE \Microsoft\VisualStudio\8.0\Setup\VS\VSTD

ProductDir

0

RL_2005_TeamSuite

2

SOFTWARE \Microsoft\VisualStudio\8.0\Setup\VS\VSTS

ProductDir

0

RL_2005_TeamTest

2

SOFTWARE \Microsoft\VisualStudio\8.0\Setup\VS\VSTT

ProductDir

0

RL_2005_VSTO

2

SOFTWARE \Microsoft\VisualStudio\8.0\Setup\VS\VSTO

ProductDir

0

Détecter lorsque Visual Studio exécute

Votre package VS ne sera pas enregistrés correctement si Visual Studio s'exécute lorsque le VSPackage est installé. Le programme d'installation doit détecter lorsque Visual Studio exécute puis refuser d'installer le programme. Windows Installer ne vous permet pas utiliser des entrées de mappage pour activer une telle détection. À la place, vous devez créer une action personnalisée, comme suit : Utilisez la fonction d' EnumProcesses pour détecter le processus devenv.exe, puis l'un ou l'autre définit une propriété de programme d'installation qui est utilisée dans une condition de lancement ou de façon conditionnelle affiche une boîte de dialogue qui invite l'utilisateur à fermer Visual Studio.

Annuler l'installation à l'aide de conditions de lancement

Si les spécifications d'un caractère de votre package VS ne sont pas satisfaites, vous pouvez utiliser le tableau de LaunchCondition de package Windows Installer pour annuler l'installation. Le tableau de LaunchCondition possède une ligne de réussir la restauration chaque condition de lancement et un message s'affiche pour chaque condition qui n'est pas remplie. Les lignes de table de LaunchCondition de tableau suivant répertorie qui utilisent les propriétés système Windows Installer et les propriétés personnalisées de détection qui étaient installation précédente.

Notes

Étant donné qu'enregistrement d'un VSPackage requiert des valeurs de Registre en écriture à la clé HKEY_LOCAL_MACHINE, l'installation d'un VSPackage requiert des droits utilisateurs élevés, même si réellement exécutant le VSPackage ne requiert pas d'autorisations élevées.

Lignes de table de LaunchCondition exemple

Condition

Description

DEVENV_COMP_2002 OR DEVENV_COMP_2003 OR DEVENV_COMP_2005 OR

DEVENV_COMP_2008 installé

Ce VSPackage a besoin de Visual Studio.

=> 500 De VersionNT

Windows 2000 est la configuration minimale requise pour le VSPackage.

NOT VISUAL_STUDIO_RUNNING

Visual Studio proche avant d'installer ce VSPackage.

Privilégié

Pour installer ce VSPackage, des droits utilisateurs est élevé sont requis.

Notes

Si vous appuyez sur ce tableau d'AppSearch pour définir les propriétés que vous souhaitez utiliser dans le tableau de LaunchCondition, l'action standard d'AppSearch doit apparaître avant LaunchConditions dans le tableau d'InstallUISequence et le tableau d'InstallExecuteSequence.

Voir aussi

Autres ressources

Installer les VSPackages à l'aide de Windows Installer