Identifier l'application d'un .msi

Résolu/Fermé
Fonx2 Messages postés 331 Date d'inscription dimanche 6 avril 2008 Statut Membre Dernière intervention 5 mai 2013 - Modifié par Fonx2 le 31/08/2010 à 15:06
Fonx2 Messages postés 331 Date d'inscription dimanche 6 avril 2008 Statut Membre Dernière intervention 5 mai 2013 - 31 août 2010 à 15:27
Bonjour,

Je m'attaque actuellement à la désinstallation silencieuse d'application en batch.
J'en ai notamment 2 qui utilise Windows Installer.
Par conséquent, je me retrouve avec un .msi dans %WinDir%\Installer
Le hic, c'est que le nom de ce .msi est totalement aléatoire d'un PC à l'autre!!
Pour trouver le bon, je dois systématiquement consulter les propriétés > onglet "résumé".

Comment faire pour identifier automatiquement celui qui m'intéresse?

Petite précision: le script doit tourner sous Windows NT (donc pas question d'aller fouiller dans le registre car la commande reg query n'existe pas)
A voir également:

1 réponse

Fonx2 Messages postés 331 Date d'inscription dimanche 6 avril 2008 Statut Membre Dernière intervention 5 mai 2013 132
31 août 2010 à 15:27
Pour ceux que sa intéresse:

A lire en premier: http://www.hotline-pc.org

Après quelques recherches, voici ce que j'ai trouvé pour identifier l'application à désinstaller de manière unique et universelle:

----------------------------------------------------------------------------------------
Le paramètre peut désigner le fichier MSI d'origine, ou le Code Produit, qui est un code distinct associé à chaque version
de STATISTICA. Vous pouvez rechercher ce code dans le registre en cherchant l'entrée Ajout/Suppression du programme
STATISTICA dans la clé du registre :
HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall
Par exemple, voici l'emplacement d'une entrée d'Ajout /Suppression du programme STATISTICA dans le registre :
KEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\Uninstall\{909b6a0e-bd44-
5336-7cd4-63a08cfb9a6d}, où {909b6a0e-bd44-5336-7cd4-63a08cfb9a6d} représente le Code Produit.
La syntaxe permettant de désinstaller cette version en utilisant le Code Produit serait donc du type :
1. msiexec /uninstall {909b6a0e-bd44-5336-7cd4-63a08cfb9a6d}
-----------------------------------------------------------------------------------------

Finalement, il semble qu'il ne soit pas possible d'identifier automatique à quelle application appartient un .msi sans lire dans le registre (pour Windows NT).

En revanche, il est possible d'identifier l'application à désinstaller par le biais du CodeProduit, qu'il faut rechercer manuellement dans le registre (uniquement la première fois bien sur).
0