2010-09-24 36 views
0

J'ai un programme d'installation WiX qui exécute un programme qui télécharge la dernière version de mon code et installe trois services Windows. J'ai une action personnalisée exécute un autre programme qui arrête et désinstalle les services lors de la désinstallation, après InstallInitialize. Le programme de désinstallation supprime également tous les fichiers et répertoires téléchargés. Cependant, lorsque je RmeoveFile actions pour supprimer les fichiers, il invite l'utilisateur à arrêter les services, car il doit détecter le conflit. Je voudrais éviter cela, car mon action personnalisée le fait de toute façon.Comment puis-je empêcher une fenêtre pop-up demandant d'arrêter les services avant de désinstaller

donc je besoin d'une façon de faire une des opérations suivantes:

  1. Exécutez l'action personnalisée (et donc mon programme qui arrête les services) avant que l'installateur fait tout le vérifier ne qui lui indique que les services doivent être fermés. Dites à l'installateur d'arrêter automatiquement les services sans inviter l'utilisateur à le faire. Malheureusement, le paquet d'installation n'inclut pas les services, ils sont téléchargés par mon application, donc je ne suis pas sûr de ce que je ferais.

Est-ce que l'une de ces choses peut être faite?

Répondre

1

La solution facile est de se débarrasser de l'action personnalisée. Windows Installer peut être dit de gérer les services qu'il n'a pas créés. Just author ServiceControl éléments comme ceci:

<Component... 
    <ServiceControl Id="sc1" Name="fooservice" Remove="uninstall" Stop="uninstall"/> 
</Component> 
+0

Est-ce que cela n'incitera pas l'utilisateur à fermer le service? –

+0

Il ne vous demandera pas, il va juste le faire. –