Pb pour faire désinstaller 2 softs par Inno Setup 3 !

Pb pour faire désinstaller 2 softs par Inno Setup 3 ! - Logiciels - Windows & Software

Marsh Posté le 26-03-2003 à 19:02:29    

Voilà, j'ai une appli que je fais installer via Inno Setup. Mais comme cette appli tourne sous le runtime Paradox 10, Inno se charge aussi de l'install du runtime (il lance son installeur).
 
Du coup, Inno doit donc pouvoir réaliser les 2 désinstallations.
Pour celà, il doit d'abord commencer par lancer la désinstallation du runtime via la section [UninstallRun]. Or...
 
1/ Il n'y arrive pas directement :-(
J'ai le message d'erreur suivant : "Impossible d'ouvrir ce package d'installation. Vérifiez qu'il existe et que vous êtes autorisé à y accéder, ou vérifiez auprès de votre revendeur d'applicaztions que ce package de Windows Installer est valide"
Du coup j'ai créé un .bat que lance Inno et qui lui lance la désinstalle du runtime ; et là ça marche.
 
Voilà ce qui ne marche pas :
[UninstallRun]
Filename: "MsiExec.exe"; Parameters: "/x{{14A...081}}"
Le double { est normal, sinon Inno prend la clé pour une variable.
 
Et voilà ce qui marche :
Filename: "{app}\batch\UninstRT.bat"; Flags: runminimized
Avec le batch UninstRT.bat dans lequel il y a : MsiExec.exe /x{14A...081}
 
Quelqu'un sait pourquoi Inno n'arrive pas à lancer lui directement la désinstalle du runtime ?
 
2/ Sous 2000 et XP je n'ai pas de problème avec ce batch, mais sous 95/98, soit la fenêtre du bach se ferme sitôt la commande exécutée et n'attend pas la fin de l'exécution du programme, soit au contraire elle s'ouvre et ne se ferme jamais.
Du coup, soit Inno poursuit la désinstallation de l'appli avant même celle du runtime car il pense l'opération terminée, soit il ne passe jamais à la désinstallation de l'appli car il attend la fermeture de la fenêtre (la fin de l'exécution pour lui) :(  
 
Sur le fond il y a 3comportements possibles pour la fenêtre de ligne de commande :
- Soit elle s'ouvre, lance la commande et se ferme automatiquement (95/98)
- Soit elle s'ouvre, lance la commande et attend que le soft ait terminé pour se fermer automatiquement (2000/XP)
- Soit elle s'ouvre, lance la commande mais reste ouverte quelque soit ce qui peut se passer (95/98 avec un "@" devant la ligne de commande dans le batch)
 
Savez vous quel paramètre utiliser sous 95/98 pour obtenir le même comportement que sous 2000/XP : que la fenêtre de ligne de commande se ferme à la fin de l'exécution du programme ?
 
3/ Comme Inno effectue 2 désinstallations, et même si l'utilisateur a bien demandé celle de mon appli, j'aimerais demander confirmation pour celle du runtime.
En effet, le mec peut vouloir virer l'appli mais laisser le runtime sous lequel tourne d'autre appli.
 
Comment faire afficher une boite de dialogue de demander de confirmation avant de lancer l'exécution d'un fichier via [UninstallRun] ?
 
Merci d'avance :jap:


Message édité par -ET- le 27-03-2003 à 16:35:30
Reply

Marsh Posté le 26-03-2003 à 19:02:29   

Reply

Marsh Posté le 27-03-2003 à 16:32:36    

UP  :)  
 
No idea ? Même sur le pt n°2 ?


Message édité par -ET- le 27-03-2003 à 16:32:47
Reply

Marsh Posté le 28-03-2003 à 01:53:49    

Bon ben ça a pas avancé depuis hier :D  
 
Alors, voilà le résultat des courses pour ceux que ça insterresse :sarcastic:  
 
Point 1 : Il ne fallait qu'une seule accolade à la fin...
Filename: "MsiExec.exe"; Parameters: "/x{{14A...081}"  
 
Point 2 : Obsolette du fait de la résolution du point 1
 
Point 3 : C'est impossible sans utiliser les scripts ISX (Inno Setup extensions).
 
Oualà :)  
Sinon je conseille à tous les développeurs Inno Setup. C'est une merveille :love:


Message édité par -ET- le 28-03-2003 à 01:54:35
Reply

Marsh Posté le 29-03-2003 à 00:32:31    

donner des sious a bill, non merci ...


---------------
coming soon
Reply

Marsh Posté le 29-03-2003 à 09:43:20    

boubours a écrit :

donner des sious a bill, non merci ...


 :??:  
 
Inno Setup est un Freeware d'un programmeur indépendant (Jordan Russell). Qui parle de billou ?
www.innosetup.com

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed