Les Installeurs/ Installers (ou programme d’installation) en Batch est un logiciel spécialisé dont le rôle est d’automatiser l’installation d’un autre logiciel sur un système d’exploitation (comme Windows).

1. Définition simple

Un installeur est un fichier exécutable « pour Windows » (.exe, .msi) qui :

  • Copie les fichiers du logiciel dans les bons dossiers (ex: C:\Program Files).
  • Configure le système (ex: ajoute des clés dans le registre Windows, crée des raccourcis).
  • Vérifie les prérequis (ex: espace disque, version de Windows, dépendances).
  • Demande des permissions (ex: droits administrateur).

Analogie :
C’est comme un déménageur qui :

Il en existe des centaines mais en voici une petite liste des plus utilisés :
Inno Setup
NSIS
InstallShield
Windows Installer msiexec
MSIX

Pour MacOS, Linux et Android, on parle de « paquets » (.rpm, .dpkg, .app, .apk, etc.) dans lesquels nous retrouvons des binaires (sans extension ou .bin).
Il n’y a pas d’installeur à proprement parler sur ces systèmes.

Par exemple, pour installer VLC sur Linux, le gestionnaire de paquet « apt » va lire le paquet « .deb » et va installer les fichiers.

Ce paquet contient :
. Le binaire /usr/bin/vlc.
. Les bibliothèques dans /usr/lib/vlc/.
. Les scripts de post-installation (ex: créer /etc/vlc/).

  • Dépose tes meubles (fichiers du logiciel) dans les bonnes pièces (dossiers système).
  • Monte tes étagères (configure le registre).
  • Vérifie que tout est compatible (prérequis).

Connaitre l’installeur est important dans le cadre de la créations de scripts afin de savoir comment celui-ci va se comporter et quel arguments lui sont associés.
Par exemple :
– pour rendre silencieux l’installation d’un .msi, il faudra utiliser /qn
– pour rendre silencieux l’installation d’un .exe d’un Inno Setup, il faudra utiliser /SILENT ou /VERYSILENT
– pour rendre silencieux l’installation d’un .exe d’un InstallShield, il faudra utiliser /s, /v » ou /qn »

2. À quoi ressemble un installeur ?

Fichiers courants (extensions de fichiers associés) :

  • .exe: Installeur « classique » (ex: 7z2600-x64.exe).
  • .msi : Installeur Windows Installer (ex: logiciel.msi).

Exemples visuels :

  • 7-Zip : 7z2600-x64.exe (Inno Setup).
  • Adobe Reader : AcroRdrDC2000920071_fr_FR.exe (InstallShield + MSI interne).
  • Office : setup.exe + fichiers .msi en interne.

3. Principe de fonctionnement – l’installation

  1. Extraction :
    • Le .exe se « décompresse » dans un dossier temporaire (ex: %TEMP%).
    • Exemple : 7z2600-x64.exe extrait ses fichiers avant de les copier dans C:\Program Files\7-Zip.
  2. Vérification des prérequis (parties du script qui vérifient avec des conditions) :
    • Espace disque suffisant ?
    • Version de Windows compatible ?
    • Droits administrateur ?
  3. Copie des fichiers :
    • Les fichiers du logiciel sont copiés dans :
      • C:\Program Files\NomDuLogiciel (fichiers principaux).
      • C:\Users\Utilisateur\AppData (fichiers de configuration).
  4. Configuration système :
    • Ajout de clés dans le registre Windows (ex: HKEY_LOCAL_MACHINE\SOFTWARE\NomDuLogiciel).
    • Création de raccourcis dans le menu Démarrer ou sur le bureau.
  5. Finalisation :
    • Nettoyage des fichiers temporaires.
    • Redémarrage si nécessaire (ex: pour les drivers).

4. Types d’installeurs (Technologies Windows)

TechnologieDescriptionExemples de logicielsArguments silencieux
Inno SetupOutil open-source pour créer des .exe.7-Zip, Notepad++, WinSCP/SILENT, /VERYSILENT
NSISNullsoft Scriptable Install System (léger et flexible).Winamp, PuTTY/S
InstallShieldOutil professionnel (souvent utilisé pour les gros logiciels).Adobe Reader, AutoCAD/s /v »/qn »
Windows Installer (MSI)Technologie native de Microsoft (fichiers .msi).Office, Visual Studiomsiexec /i logiciel.msi /qn
Advanced InstallerOutil moderne pour créer des .msi ou .exe.Certains logiciels professionnels/quiet

5. Comment analyser un installeur ?

Connaitre l’installeur utilisé pour la création du binaire d’un logiciel vous permettra de viser juste avec votre script d’installation par exemple.
Cela peut vous éviter certaines frustrations concernant des commandes qui ne fonctionneraient pas.

Pour reconnaitre l’installeur, vous avez plusieurs moyens :

OutilUtilitéLien
7-ZipExtraire le contenu d’un .exe pour voir sa structure.7-zip.org
Universal Extractor 2Extraire même les installeurs complexes.legroom.net
OrcaÉditer manuellement les fichiers .msi.Fait partie du Windows SDK.
Process MonitorSurveiller les modifications système pendant une installation.Microsoft Sysinternals

Vous pouvez rechercher la notice d’utilisation du binaire en tapant le nom de l’application suivit de « silent install » par exemple.

Vous pouvez également utiliser les commande /? (Batch/PowerShell) dans un terminal pour afficher l’aide d’un installeur et les options associées.


Exemple :

Note : certaines applications n’embarquent pas d’aides et la commande vous retournera une erreur.

6. Et MSI dans tout ça ?

MSI est natif à l’environnement Windows, il a ses propres options d’installations.
Très souvent préféré en IT dans le cadre d’installations industrialisées, Télé déploiements, en masterisation de postes de travail également.

Petit comparatif simple et rapide entre .msi et .exe :

Critère.msi (Windows Installer).exe (Inno Setup/NSIS/InstallShield)
TechnologieNative à Windows (Microsoft).Développée par des tiers (ex: Inno Setup).
Arguments silencieuxUniversels (/qn, /quiet).Dépendent de l’outil (ex: /S, /VERYSILENT).
FlexibilitéStandardiséUltra flexible
StandaloneOui mais après installationOui
DésinstallationProprePlus complexe
ExemplesOffice, AutoCAD, certains drivers.7-Zip, Notepad++, WinSCP.

7. J’ai entendu parler de MSIX, c’est quoi ?

MSIX ou (.msix), c’est le format moderne de MSI introduit par Windows (le successeur de MSI).
Il a plusieurs avantages mais aussi des inconvénients par rapport à MSI, voici un bref exemple :

MSIMSIX
Âgeancienmoderne
Isolationnonoui
Désinstallationmoyenneexecellente
Flexibilitétrès élevéelimitée
Déploiement entrepriseexcellentexcellent
Complexitéélevéeplus simple
Sécuritéclassiquerenforcée

8. Pour aller plus loin…

Si tu veux créer tes propres installeurs pour tes scripts et logiciels :

  • Inno Setup :
    • Télécharge Inno Setup.
    • Écris un script .iss pour décrire l’installation.
    • Compile-le en .exe.
  • NSIS :
    • Télécharge NSIS.
    • Écris un script .nsi.
  • MSI :
    • Utilise Advanced Installer ou WiX Toolset (plus complexe).

9. Conclusion

.msi, .exe, etc… ils ont tous des défauts et des qualités, l’important est de les connaitre, comment les utiliser et choisir le bon en fonction de ce que l’on souhaite réaliser dans le cadre du développement d’applications.

Tags:

Comments are closed