2009-12-07 3 views
2

J'ai un projet Visual Studio composé d'un service et un installateur pour elle. Au cours du développement, je l'ai installé et désinstallé le msi-paquet au moins cinquante fois, mais la dernière fois que j'ai essayé de le désinstaller, je reçu un message d'erreur indiquant que « le produit installé ne correspond pas à la source d'installation » et si je clique sur « Ok » sur ce message que je reçois ce qui suit: "Le chemin xxxxxx.msi est introuvable." Donc, d'abord, il ne correspond pas et puis ne peut pas être trouvé. Ou quelque chose. Les paquets msi existent sur le chemin donné dans le message d'erreur (j'ai remplacé le chemin réel et le nom du paquet par xxxxx).Impossible de désinstaller un service développé dans Visual Studio

Ce que je veux dire en installant le service est double-cliquant sur le msi-package que la fonction « Build Solution » crée et en désinstallant je veux dire Panneau de configuration -> Ajouter ou supprimer des programmes.

J'utilise Windows XP et Visual Studio 2003 dans ce projet particulier.

J'ai installé et désinstallé et dans d'autres services développés visual studio des centaines ou des milliers de fois, mais ne l'ai jamais eu ce problème auparavant.

Que dois-je faire?

Répondre

1

J'ai vu cela auparavant. Essentiellement, le programme d'installation (.msi) que Windows veut utiliser n'est pas disponible là où il pense qu'il devrait être stocké. Pourquoi cela arrive je ne suis pas tout à fait sûr, mais pour y remédier, vous avez quelques options.

  1. Mettez votre MSI à l'endroit où les fenêtres sont à sa recherche
  2. retirer votre entrée avec force produit du catalogue MSI à l'aide MsiZap. Cette option est un peu plus risquée car elle supprime toutes les références à votre service par rapport à la désinstallation réelle. Cependant, le risque est faible si c'est un service que vous avez développé et c'est juste votre machine dev.
+0

Merci. J'ai utilisé cet outil pour supprimer l'entrée de produit. Problème résolu. – Micke

0

Un autre utilitaire que j'ai utilisé pour se débarrasser d'un service Windows est sc.exe. Vous pouvez faire quelque chose comme: sc.exe delete "Nom du service". Redémarrer la machine aide aussi parfois.

Questions connexes