Les packages Windows Installer (MSI) sont faciles à installer sur un appareil, mais une installation silencieuse de Windows Installer sur des centaines d’appareils nécessite la bonne commande. Heureusement, comme les packages Windows Installer partagent un ensemble standard d’options msiexec, les commandes de base sont les mêmes pour chaque MSI.
Dans cette optique, vous pouvez exécuter des commandes d’installation silencieuse msiexec sur plusieurs appareils. Cependant, comme le dit l’expression, le diable se cache dans les détails. Le niveau d’affichage, le comportement au redémarrage, la journalisation et bien d’autres éléments peuvent affecter une installation silencieuse MSI et déterminer si elle réussit ou échoue. Et si elle échoue, rien ne s’affiche à l’écran, donc le code de sortie et le journal constituent la seule trace de ce qui s’est mal passé.
Alors, comment exécuter correctement des installations MSI silencieuses ? Voyons les options à connaître, comment installer et désinstaller en mode silencieux, comment corriger les échecs courants, et plus encore, pour que vous puissiez exécuter efficacement des installations MSI silencieuses en toute simplicité.
La commande d’installation msiexec pour une installation MSI silencieuse
Commençons par examiner la commande d’installation msiexec et ce que signifie chacune de ses parties. Pour installer des packages MSI via cmd, ouvrez une invite de commandes élevée et exécutez cette commande d’installation msi :
msiexec /i "C:\Installers\App.msi" /qn /norestart /l*v "C:\Logs\App-install.log"
Bien sûr, si vous ne comprenez pas la syntaxe de la ligne de commande, cela ne vous dira rien. Décomposons donc cela en éléments plus faciles à comprendre :
/i installe le package. Il s’agit de la commande initiale qui lance le processus ; veillez à ajouter ensuite le chemin complet entre guillemets afin que les espaces dans les noms de dossiers ne perturbent pas la commande.
/qn indique que la commande doit s’exécuter sans interface utilisateur. Vous pouvez également utiliser /quiet comme option équivalente.
/norestart empêche Windows Installer de redémarrer l’appareil une fois l’installation terminée, même si le package en demande un. Cela permet d’éviter que l’installation n’interrompe le travail en redémarrant soudainement les appareils des utilisateurs finaux.
/l*v écrit un journal détaillé dans le chemin indiqué. Gardez à l’esprit que le dossier auquel il mène doit déjà exister.
Assurez-vous d’exécuter la commande depuis une invite de commandes élevée, afin qu’elle n’ait pas besoin de demander des autorisations. Une installation silencieuse ne peut pas afficher d’invite UAC pour demander des droits d’administrateur ; sinon, elle ne serait pas silencieuse.
Et si vous utilisez PowerShell ? Il existe un script similaire pour cela, avec quelques différences clés :
$p = Start-Process msiexec.exe -ArgumentList '/i "C:\Installers\App.msi" /qn /norestart /l*v "C:\Logs\App-install.log"' -Wait -PassThru $p.ExitCode
Dans ce cas, le paramètre -Wait maintient le script en attente jusqu’à la fin de l’installation, et -PassThru renvoie le code de sortie.
Commutateurs MSI pour les installations silencieuses et sans surveillance
Voyons maintenant en détail les commutateurs MSI à connaître pour les installations silencieuses et sans surveillance. Microsoft documente la liste complète dans ses options de ligne de commande standard du programme d’installation. Gardez à l’esprit que les options msiexec ne sont pas sensibles à la casse, donc que vous saisissiez /QN ou /qn, le résultat final sera le même. Le commutateur /quiet est ce que la plupart des gens entendent par une installation silencieuse msiexec, et Microsoft le considère comme identique à /qn.
Nous pouvons répartir les commutateurs en trois groupes : Affichage, Redémarrage et Journalisation. Chacun constitue une partie importante du processus d’installation et détermine la façon dont la commande s’exécute.
Option | Groupe | Ce qu’il fait |
/quiet or /qn | Affichage | Aucune interface utilisateur du tout |
/qn+ | Affichage | Aucune interface, puis une boîte de dialogue à la fin de l’installation |
/passive | Affichage | Barre de progression uniquement, aucune saisie utilisateur nécessaire |
/qb | Affichage | Interface basique avec une barre de progression |
/qb! | Affichage | Interface de base avec le bouton Annuler masqué |
/norestart | Redémarrage | Ne redémarre jamais après l’installation |
/promptrestart | Redémarrage | Demande à l’utilisateur si un redémarrage est nécessaire |
/forcerestart | Redémarrage | Redémarre toujours après l’installation |
/l*v "path" | Enregistrement | Journal détaillé de tout, écrit dans ce chemin |
/log "path" | Enregistrement | Identique à /l* (toutes les informations sauf le mode verbeux et le débogage supplémentaire) |
Si vous effectuez un déploiement sur de grands parcs, /qn (ou /quiet) avec /norestart est une association courante, tandis que les redémarrages sont gérés par l’outil de déploiement. Vous devrez également utiliser /passive pour les installations où l’utilisateur doit voir la progression.
Gardez à l’esprit que msiexec n’a pas de commutateur /s ou /silent, même si les programmes d’installation EXE en ont. Les programmes d’installation EXE n’ont pas non plus de norme commune, ils peuvent donc être un peu plus compliqués.
Comment définir les propriétés et les transformations MSI dans une installation silencieuse
Si vous souhaitez personnaliser un package d’application, vous devrez savoir comment définir les propriétés et les transformations MSI. À moins que la ligne de commande ne définisse ces personnalisations, une installation silencieuse utilisera les paramètres par défaut du package. Il est donc important de savoir quoi définir.
Lorsque vous définissez des propriétés, elles doivent être placées après les options sous la forme PROPERTY=VALUE. Gardez à l’esprit que Windows Installer traite les noms de propriétés en majuscules, mais que la valeur conserve sa casse, et que les valeurs contenant des espaces doivent être mises entre guillemets. Comme les noms de propriétés varient selon le package, pensez à consulter la documentation de déploiement du fournisseur pour les connaître.
Par exemple, la définition des propriétés MSI peut ressembler à ceci :
msiexec /i "C:\Installers\App.msi" /qn INSTALLDIR="D:\Apps\App" /l*v "C:\Logs\App-install.log"
Ensuite, nous avons les transformations. Une transformation (fichier .mst) contient un ensemble de modifications apportées au package afin qu’elles puissent être appliquées directement plutôt que d’être ajoutées à la ligne de commande. Vous pouvez utiliser la propriété TRANSFORMS pour les ajouter comme suit :
msiexec /i "C:\Installers\App.msi" TRANSFORMS="C:\Installers\App.mst" /qn /l*v "C:\Logs\App-install.log"
Comment désinstaller silencieusement un MSI
Lorsque vous souhaitez désinstaller silencieusement un MSI, cela devrait être tout aussi simple que de l’installer. Les équipes IT ont souvent besoin de supprimer des packages, que ce soit pour préparer un changement de version, nettoyer des appareils ou retirer une installation ayant échoué.
La commande /x supprime un package tout en acceptant les mêmes options d’affichage, de redémarrage et de journalisation que les commandes d’installation. Cela fonctionne soit avec le fichier MSI d’origine, soit avec le code produit, même si ce dernier est utile lorsque le MSI d’origine n’est plus sur l’appareil.
Une commande de désinstallation silencieuse devrait ressembler à ceci :
msiexec /x "C:\Installers\App.msi" /qn /norestart /l*v "C:\Logs\App-uninstall.log"
OU :
msiexec /x {PRODUCT-CODE-GUID} /qn /norestart /l*v "C:\Logs\App-uninstall.log"
Comment lire les codes de sortie de msiexec
Lorsque vous travaillez avec msiexec, vous devez comprendre les codes de sortie. Lorsque msiexec termine une tâche, il renvoie un code de sortie que les scripts et les outils de déploiement lisent pour déterminer si le programme d’installation a fonctionné, si quelque chose s’est mal passé ou si un redémarrage est nécessaire. Microsoft répertorie chaque code dans sa référence des messages d’erreur MsiExec.
Les codes de sortie msiexec sont les suivants :
Code de sortie | Descripción | Que faire |
0 | Succès | Rien |
3010 | Succès, redémarrage requis pour terminer | Planifier un redémarrage. Traiter comme un succès |
1641 | Succès, le programme d’installation a lancé un redémarrage | À traiter comme un succès. Attendez-vous à ce que l’appareil redémarre |
1603 | Erreur fatale lors de l’installation | Ouvrez le journal détaillé pour en trouver la cause |
1618 | Une autre installation est déjà en cours | Attendre et réessayer |
Dans certains cas, un script traite tout code non nul comme un échec. Dans ces cas, il signalera les codes 3010 et 1641 comme des échecs, même si l’application s’est correctement installée. Par conséquent, vous devrez vérifier le code de réussite avant de considérer une installation comme un échec ; parfois, un simple redémarrage suffit pour terminer l’installation.
Pourquoi une installation MSI silencieuse échoue et comment y remédier
Il arrive parfois que les installations silencieuses échouent. Quand cela arrive, vous voudrez savoir pourquoi et comment résoudre le problème. Même si une installation silencieuse échouée n’affiche rien à l’utilisateur, vous pouvez examiner les éléments suivants pour obtenir plus d’informations :
1. L’installation n’a pas été exécutée avec des droits administrateur
Une installation silencieuse nécessite toujours des droits administrateur pour s’exécuter, mais elle ne peut pas inviter les utilisateurs à intervenir si les autorisations nécessaires sont absentes. Assurez-vous d’exécuter les installations depuis une invite de commande élevée ou un outil de déploiement disposant des droits administrateur afin de ne pas avoir à vous soucier d’autorisations manquantes.
Sous Windows 10, l’erreur 1925 peut indiquer des droits administrateur manquants.
2. Le dossier de journaux n’existe pas
Windows Installer ne créera pas le dossier pour un fichier journal. Si le chemin dans /l*v pointe vers un dossier qui n’existe pas, le fichier journal ne sera pas créé. Assurez-vous d’enregistrer le journal dans un dossier qui existe toujours, ou créez un dossier si nécessaire.
3. Une autre installation est déjà en cours
Windows Installer ne peut exécuter qu’une seule installation à la fois. Si vous obtenez le code de sortie 1618, cela signifie que le programme d’installation est occupé avec une autre application. Heureusement, cela signifie simplement que vous devez attendre que l’autre installation se termine, puis réessayer l’installation.
4. L’installation a rencontré une erreur fatale
Si l’installation a rencontré une erreur, le code de sortie seul n’expliquera pas de quoi il s’agit. Dans ce cas, vous devrez consulter le journal détaillé pour obtenir plus d’informations. C’est pourquoi il est préférable d’inclure /l*v dans chaque commande d’installation silencieuse, afin de pouvoir consulter les journaux si quelque chose se produit.
Exécuter une installation silencieuse msiexec sur de nombreux appareils
Si vous gérez plusieurs appareils à distance dans un environnement d’entreprise, vous aurez besoin d’un moyen d’installer silencieusement des applications et des mises à jour. La même application peut devoir être déployée sur des centaines d’appareils, donc une commande qui fonctionne sur une machine de test n’est qu’un début.
Vous pouvez exécuter une installation silencieuse msiexec sur plusieurs appareils de plusieurs façons, notamment :
Déployer un MSI via Microsoft Intune
Si vous utilisez Microsoft Intune, vous pouvez l’utiliser pour déployer un MSI de deux façons différentes.
Intune peut déployer un MSI en tant qu’application métier (LOB), qui n’accepte qu’un seul argument en ligne de commande. Si vous avez besoin de plus, vous devrez alors utiliser la gestion des applications Win32, où le MSI est encapsulé dans un fichier .intunewin et votre commande msiexec devient la commande d’installation de l’application.
Gardez à l’esprit que le mélange d’installations d’applications Win32 et LOB pendant l’inscription Windows Autopilot peut entraîner des échecs d’installation, car elles utilisent toutes deux le service Trusted Installer en même temps.
Exécuter des installations à distance avec des scripts ou un outil de gestion des terminaux
Si vous n’utilisez pas Intune, vous pouvez exécuter des commandes via PowerShell, des sessions d’accès à distance ou un outil de gestion des terminaux. Par exemple, Splashtop AEM (Autonomous Endpoint Management) peut exécuter des scripts et automatiser la gestion des correctifs sur l’ensemble des terminaux gérés, y compris les installations silencieuses et les mises à jour planifiées à des moments opportuns. Pour une présentation complète, consultez notre guide sur l’installation silencieuse de logiciels sur des ordinateurs distants.
Là où le travail s’accumule
Exécuter la commande est la partie la plus simple. Le nombre d’applications et le travail requis pour chacune peuvent compliquer la tâche.
Chaque application a besoin de ses propres propriétés et transformations, doit être testée sur un appareil vierge, nécessite un moyen de confirmer que l’installation fonctionne, et ainsi de suite. Cela doit être répété pour chaque nouvelle version. Sans automatisation, cela crée un flux constant de travail manuel, et un package non testé peut entraîner des échecs sur l’ensemble des appareils.
Splashtop Agentic Packr automatise ce travail de packaging et de test pour chaque application et chaque version.
Créez des packages d’installation silencieuse testés avec Agentic Packr
Créer, tester et installer silencieusement des packages ne doit pas forcément être un processus manuel chronophage. Avec Splashtop Agentic Packr, vous pouvez alléger la charge des équipes IT grâce à un packaging et un déploiement automatisés et intelligents.
Splashtop Agentic Packr est un outil de packaging d’applications basé sur l’IA qui analyse les programmes d’installation, crée des packages avec la logique d’installation intégrée et les teste sur une machine virtuelle vierge. Il rédige également les règles de détection qui confirment que chaque installation a réussi. Chaque package fait l’objet de vérifications et d’analyses de sécurité pour garantir son bon fonctionnement, avec une fiche d’évaluation QA et des journaux afin que les équipes IT puissent tout examiner avant sa publication.
À chaque nouvelle mise à jour, Splashtop Agentic Packr peut créer automatiquement le package mis à jour, évitant ainsi aux équipes IT d’avoir à gérer manuellement chaque nouvelle version. Splashtop Agentic Packr peut créer des packages Intune et les publier dans Intune, ou regrouper des installations à exécuter via SCCM ou manuellement sur n’importe quel appareil Windows, ce qui en fait un outil flexible pour les installations silencieuses et les mises à jour. Il vous permet également de contrôler ce que les utilisateurs finaux voient, notamment les invites de redémarrage, les reports d’installation et les délais de grâce.
Splashtop Agentic Packr crée et teste les packages, et Splashtop AEM peut exécuter des déploiements et des scripts sur l’ensemble de vos terminaux.
Découvrez comment Splashtop Agentic Packr crée, teste et publie des packages d’installation silencieuse pour chaque application.



