Désinstallation des RT Cystal Reports 9, 10 et 11 en mode silencieux

- soit vous avez installé le runtime à partir du fichier RuntimeCrystalReports_xxx.msi (il faut le réutiliser pour désinstaller) :
msiexec /x RuntimeCrystalReports_xxx.msi /qn
remplacez RuntimeCrystalReports_xxx.msi par le vrai nom du fichier msi.
(voir ci-dessous les options de msiexec pour agir sur l'interface)

- soit vous avez installé le runtime via le setup.exe (par exemple fourni sur le CD-ROM d'Adélia Studio), alors cela dépend de la version installée :
- pour le runtime 9 :
"C:\Program Files\InstallShield Installation Information\{04FE5FDC-46F7-4BF6-A5DF-797625DF9489}\Setup.exe" remove -s -f1"c:\uninstallRTCR9.iss"
avec le fichier uninstallRTCR9.iss (à vous d'ajuster le chemin de ce fichier dans la commande)

- pour le runtime 10 :
"C:\Program Files\InstallShield Installation Information\{A2AC59EA-EA36-410A-9092-2893DD6F2BF0}\Setup.exe" remove -s -f1"c:\uninstallRTCR10.iss"
avec le fichier uninstallRTCR10.iss (à vous d'ajuster le chemin de ce fichier dans la commande)

- pour le runtime 11 :
"C:\Program Files\InstallShield Installation Information\{A2AC59EA-EA36-410A-9092-2893DD6F2BF0}\Setup.exe" remove -s -f1"c:\uninstallRTCR11.iss"
avec le fichier uninstallRTCR11.iss (à vous d'ajuster le chemin de ce fichier dans la commande)

Installation du runtime CR2008 et ultérieurs en silencieux :

msiexec /i CRNETRuntime_2008_03.msi /qn

Adaptez en fonction du fichier msi utilisé pour l'installation
(voir ci-dessous les options de msiexec pour agir sur l'interface)

Options de la commande msiexec :

Voici les autres options de msiexec pour agir sur l'interface :
/qn Aucune interface (parfois pas pratique car on ne sait pas si l'action est finie ou pas)
/qr Interface normale mais en lançant directement l'action
/qb Seule une fenêtre de progression est affichée
/qb+ Fenêtre de progression + un message (modal) de fin d'installation
/qb- Fenêtre de progression + un message (non modal) de fin d'installation
/qb+! Idem à /qb+ mais sans bouton Annuler dans la fenêtre de progression
/qb-! Idem à /qb- mais sans bouton Annuler dans la fenêtre de progression

Avec la commande msiexec, vous pouvez aussi générer un fichier de log (pour la désinstallation ou l'installation) qui permet de vérifier s'il y a eu un souci ; pour cela utilisez l'option /l*v! (L minuscule) ou /L*v! :
/l*v! nomFichierLog

par exemple :
msiexec /i CRNETRuntime_2008_03.msi /qb /l*v! c:\installCR2008.txt
msiexec /x CRNETRuntime_2008_03.msi /qb /l*v! c:\uninstallCR2008.txt

Attention : pour tout nom de fichier, vous pouvez indiquer son chemin complet. Si le nom ou le chemin du fichier contient un espace, vous devez l'encapsuler entre guillemets.

Pour avoir plus d'informations sur les options de msiexec.exe, il suffit de lancer cet exécutable sans paramètre : vous obtiendrez une interface contenant la syntaxe complète.

Plusieurs msiexec dans un fichier de commande .bat

Si vous souhaitez enchaîner la désinstallation et l'installation, utilisez un fichier de commande .bat en utilisant la commande start /wait comme ceci :

start /wait msiexec /x RuntimeCrystalReports_9_MM.msi /qb
start /wait msiexec /i CRNETRuntime_2008_03.msi /qb

Préférez les options /qr et /qb car elles associent une interface au processus msiexec, ce qui fait que start /wait va bien attendre la fin de l'exécution de cette interface avant de rendre la main.
Si vous utilisez start /wait et /qn, il y a un risque que les msiexec s'exécutent simultanément, ce qui n'est pas bon.

Articles connexes