Désinstallation d’un VSPackage avec Windows Installer

Pour la plupart, Windows Installer peut désinstaller votre VSPackage en « annulant » ce qu’il a fait pour installer votre VSPackage. Les actions personnalisées décrites dans les commandes qui doivent être exécutées après l’installation doivent également être exécutées après une désinstallation. Étant donné que les appels à devenv.exe se produisent juste avant l’action standard InstallFinalize pour l’installation et la désinstallation, les entrées de table CustomAction et InstallExecuteSequence servent les deux cas.

Remarque

Exécutez devenv /setup après avoir désinstallé un package MSI.

En règle générale, si vous ajoutez des actions personnalisées à un package Windows Installer, vous devez gérer ces actions lors de la désinstallation et de la restauration. Si vous ajoutez des actions personnalisées pour inscrire automatiquement votre VSPackage, par exemple, vous devez ajouter des actions personnalisées pour la désinscrire également.

Remarque

Il est possible pour un utilisateur d’installer votre VSPackage, puis de désinstaller les versions de Visual Studio avec lesquelles il est intégré. Vous pouvez vous assurer que la désinstallation de votre VSPackage fonctionne dans ce scénario en éliminant les actions personnalisées qui exécutent du code avec des dépendances sur Visual Studio.

Gestion des conditions de lancement au moment de la désinstallation

L’action Standard LaunchConditions lit les lignes de la table LaunchCondition pour afficher les messages d’erreur si les conditions ne sont pas remplies. Comme les conditions de lancement sont généralement utilisées pour vous assurer que la configuration système requise est remplie, vous pouvez généralement ignorer les conditions de lancement lors de la désinstallation en ajoutant la condition, NOT Installedà la ligne LaunchConditions de la table LaunchConditions.

Une alternative consiste à ajouter OR Installed des conditions de lancement qui ne sont pas importantes lors de la désinstallation. Cela garantit que la condition est toujours vraie lors de la désinstallation et n’affiche donc pas le message d’erreur de la condition de lancement.

Remarque

Installed est la propriété que Windows Installer définit lorsqu’il détecte que votre VSPackage a déjà été installé sur le système.