2017-06-23 4 views
-1

J'ai rencontré un problème lors de l'analyse du résultat d'installation d'un seul fichier msi. Si une version plus récente de certains programmes se termine, elle renvoie le code 1603 (échec de l'installation), ce qui n'est pas réellement une erreur. Comment y faire face?Traitement du résultat de l'installation de msi

Répondre

1

Créer un journal détaillé qui aura plus de détails d'erreur:

msiexec -i setup.msi -l*v logfile.txt 

Rechercher return value 3 (localisé) dans le fichier journal pour se rendre à l'emplacement de l'erreur. La cause réelle de l'erreur est généralement enregistrée quelques lignes avant cela.

+0

Mais c'est une information liée à l'homme, comment programmer pour traiter ce texte? J'ai juste besoin de quelque chose pour détecter si l'erreur était critique (puis abandonner l'installation) ou non. –

+0

@Alek Maintenant, je comprends mieux votre question. Avez-vous créé le fichier MSI ou provient-il d'un autre fabricant? Si c'est le vôtre, vous pouvez écrire une action personnalisée qui renvoie ERROR_NO_MORE_ITEMS dans le cas où une nouvelle version est installée. Cela passerait l'installation mais le processus d'installation retournerait toujours 0 (succès). – zett42

+0

Il est un autre fabricant, en fait, il peut tout - comme VS Package redistribuable ou installateur .Net –