Commandes qui doivent être exécutées après l’installation

Si vous déployez votre extension via un fichier .msi , vous devez exécuter devenv /setup dans le cadre de votre installation afin que Visual Studio découvre vos extensions.

Remarque

Les informations contenues dans cette rubrique s’appliquent à la recherche de devenv.exe avec Visual Studio 2008 et versions antérieures. Pour plus d’informations sur la découverte de devenv.exe avec des versions ultérieures de Visual Studio, consultez Détecter la configuration système requise.

Rechercher devenv.exe

Vous pouvez localiser le fichier devenv.exe de chaque version à partir des valeurs de Registre que Visual Studio installe écrire, à l’aide de la table RegLocator et des tables AppSearch pour stocker les valeurs de Registre en tant que propriétés. Pour plus d’informations, consultez Détecter la configuration système requise.

Lignes de table RegLocator pour localiser devenv.exe à partir de différentes versions de Visual Studio

Signature Root Clé Nom Type
RL_DevenvExe_2002 2 SOFTWARE\Microsoft\VisualStudio\7.0\Setup\VS EnvironmentPath 2
RL_DevenvExe_2003 2 SOFTWARE\Microsoft\VisualStudio\7.1\Setup\VS EnvironmentPath 2
RL_DevenvExe_2005 2 SOFTWARE\Microsoft\VisualStudio\8.0\Setup\VS EnvironmentPath 2
RL_DevenvExe_2008 2 SOFTWARE\Microsoft\VisualStudio\9.0\Setup\VS EnvironmentPath 2

Lignes de table AppSearch pour les lignes de table RegLocator correspondantes

Propriété Signature
DEVENV_EXE_2002 RL_DevenvExe_2002
DEVENV_EXE_2003 RL_DevenvExe_2003
DEVENV_EXE_2005 RL_DevenvExe_2005
DEVENV_EXE_2008 RL_DevenvExe_2008

Par exemple, le programme d’installation de Visual Studio écrit la valeur de Registre de HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\VisualStudio\9.0\Setup\VS\EnvironmentPath en tant que C :\VS2008\Common7\IDE\devenv.exe, un chemin d’accès complet au programme d’installation doit s’exécuter.

Remarque

Étant donné que la colonne Type de la table RegLocator est 2, il n’est pas nécessaire de spécifier des informations de version supplémentaires dans la table Signature.

Exécuter devenv.exe

Une fois l’action standard AppSearch exécutée dans le programme d’installation, chaque propriété de la table AppSearch a une valeur pointant vers le fichier devenv.exe pour la version correspondante de Visual Studio. Si l’une des valeurs de Registre spécifiées n’est pas présente , car cette version de Visual Studio n’est pas installée, la propriété spécifiée a la valeur Null.

Windows Installer prend en charge l’exécution d’un exécutable vers lequel une propriété pointe par le biais du type d’action personnalisé 50. L’action personnalisée doit inclure les options d’exécution dans le script ( msidbCustomActionTypeInScript 1024) et msidbCustomActionTypeCommit (512) pour vous assurer que le VSPackage a été correctement installé avant de l’intégrer à Visual Studio. Pour plus d’informations, consultez la table CustomAction et les options d’exécution d’action personnalisée dans le script.

Les actions personnalisées de type 50 spécifient la propriété contenant l’exécutable comme valeur de la colonne source et des arguments de ligne de commande dans la colonne Cible.

Lignes de table CustomAction pour exécuter devenv.exe

Action Type Source Cible
CA_RunDevenv2002 1586 DEVENV_EXE_2002 /Configuration
CA_RunDevenv2003 1586 DEVENV_EXE_2003 /Configuration
CA_RunDevenv2005 1586 DEVENV_EXE_2005 /Configuration
CA_RunDevenv2008 1586 DEVENV_EXE_2008 /Configuration

Les actions personnalisées doivent être créées dans la table InstallExecuteSequence pour les planifier pendant l’installation. Utilisez la propriété correspondante dans chaque ligne de la colonne Condition pour empêcher l’exécution de l’action personnalisée si cette version de Visual Studio n’est pas installée sur le système.

Remarque

Les propriétés à valeur Null sont évaluées False lorsqu’elles sont utilisées dans des conditions.

La valeur de la colonne Séquence pour chaque action personnalisée dépend d’autres valeurs de séquence dans votre package Windows Installer. Les valeurs de séquence doivent être telles que les actions personnalisées devenv.exe s’exécutent aussi près que possible immédiatement avant l’action standard InstallFinalize.

Table InstallExecuteSequence pour planifier les actions personnalisées devenv.exe

Action Condition Séquence
CA_RunDevenv2002 DEVENV_EXE_2002 6602
CA_RunDevenv2003 DEVENV_EXE_2003 6603
CA_RunDevenv2005 DEVENV_EXE_2005 6605
CA_RunDevenv2008 DEVENV_EXE_2008 6608