2010-08-23 11 views
0

J'ai une installation dont je ne suis pas certain de la raison pour laquelle le disque 1 est demandé. Sachant que le client n'a pas le disque 1, je dois l'expédier le long du MSI précédent et le déclencher en utilisant un script d'installation à l'aideZone d'action personnalisée pour déclencher une désinstallation via InstallScript

LaunchAppAndWait("MsiExec.exe", sCmdLine + sValue, WAIT);
Où est sCmdLine/x et sValue est le chemin de mon précédent MSI.

Je peux déclencher la désinstallation mais quand je le fais, il y a une autre installation en cours. Est-ce que quelqu'un sait quelle phase des actions personnalisées je devrais placer ma fonction pour le supprimer correctement

Répondre

0

Les désinstallations MSI n'exécutent pas la séquence de l'interface utilisateur, seulement la séquence Execute. Il n'est pas possible de procéder à une désinstallation à partir d'InstallScript, car il se trouve déjà dans un contexte d'exécution MSI existant et il existe un mutex à l'échelle du système qui n'en autorise qu'un seul à la fois.

J'ai besoin de comprendre votre scénario exact un peu mieux pour donner une réponse plus utile.

+0

OK, j'ai trouvé une résolution. Après un événement OnAppSetupIntiailize, je déclenche une action personnalisée qui est une fonction de LaunchAppAndWait ("msiexec", "/ x", sValue, WAIT); Basé sur une variable que j'ai définie avant alors .... Merci bien. – user428680

Questions connexes