7
votes

Désinstallation de MSI silencieux des GUID qui n'existe pas

Je tente de mettre en œuvre une désinstallation tranquille de mon application. Cela fonctionne bien si l'application est réellement installée, mais si l'utilisateur ne reçoit pas un message d'erreur et doit cliquer sur OK pour continuer.

Ma commande: P>

MSIEXEC.EXE /qb /L* "%LOGDIR%\myuninstaller.log" /x{GUID}


0 commentaires

4 Réponses :


3
votes

a trouvé la réponse sur http: // TechNet .microsoft.com / fr-US / Bibliothèque / CC759262 (WS.10) .aspx # BKMK_STUI

Il semble que je dois utiliser / qn au lieu de / qb .


2 commentaires

Vous avez une réponse, mais lisez ceci: serverfault.com/a/596519/20599 . Il est utile d'avoir des moyens alternatifs de faire face à quelque chose de plus fondamental que le déploiement. Vérifiez également l'autre lien: Stackoverflow.com/a/1055933/129130 pour un tas de façons différentes d'invoquer des désinstallations.


Je ne comprends pas vraiment, cela renvoie toujours une erreur (code 1605), comment est-ce une solution? (Je veux dire si vous ignorez les codes d'erreur en premier lieu, tout est «silencieux» de toute façon)



2
votes

Si toutes vos applications ont des touches de gestion appropriées dans "key_local_machine \ logiciel \ Microsoft \ windows \ Courrowverversion \ désinstallation" Vous pouvez également faire quelque chose comme ceci:

reg query HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\{GUID} >NUL 2>NUL || MSIEXEC.EXE /qb /L* "%LOGDIR%\myuninstaller.log" /x{GUID}


1 commentaires

Agréable. Le mien fonctionne mieux, mais j'ai appris quelque chose de nouveau ici et votre méthode est plus générique, alors je me présente comme la réponse.



0
votes

Pour mon cas, cela fonctionne avec: (Notez l'opérateur && Opérateur) xxx

selon ce lien http://www.robvanderwoude.com/condexec.php , la commande suivante (msiexec.exe) ne sera exécutée que si la première commande est exécutée avec succès (sans résultat d'erreur). Vous pouvez essayer de tester chaque commande séparément xxx


0 commentaires

0
votes

Même si vous avez une réponse acceptée, veuillez consulter cet article sur ServerFault.com: est-il possible de désactiver MSIEXEC aidez GUI? . Il existe de nombreuses façons de désinstaller une MSI via l'automatisation, vous n'avez donc pas à gérer MSIEXec.exe du tout.

Peut-être que ce Désinstallation d'un fichier MSI à partir de la ligne de commande sans utiliser MSIEXEC est également utile .


0 commentaires