Microsoft Windows Installer

une norme de facto.

La technologie Windows Installer a été développée par Microsoft et constitue un outil très puissant pour créer des installations robustes et stables. Il se compose de deux éléments principaux, le service Installer chez le client (Msiexec.exe) et un fichier de paquetage (fichier MSI). Le service Installer effectue l'installation d'une application sur la base des informations contenues dans le fichier MSI. La puissance du programme d'installation de Windows va bien au-delà de l'installation et du lancement d'applications.

MSI est l'abréviation de Microsoft Installer. Les fichiers MSI sont des bases de données relationnelles dont les tables contiennent des données binaires/textuelles qui représentent les instructions de contrôle de l'installation. Ces bases de données, ainsi que les paramètres définis lors de l'installation, sont ensuite gérées par le système d'exploitation. Le logiciel lui-même peut être stocké dans la base de données, mais il est également possible de ne stocker que les références aux fichiers. Depuis Windows 2000, la technologie est entièrement intégrée aux systèmes d'exploitation de Microsoft.

Il effectue des diagnostics et des réparations sur les programmes endommagés

Un programme peut demander au programme d'installation de déterminer s'il a des fichiers manquants ou endommagés. Il peut ensuite demander au service d'installation de réparer ce programme, si nécessaire, en recopiant les fichiers manquants ou endommagés.

L'état d'origine de l'ordinateur est restauré en cas d'échec de l'installation.

Windows Installer suit toutes les modifications apportées au système pendant le processus d'installation du programme. Si l'installation ne réussit pas, elle peut réinitialiser le système à son état d'origine. Ce processus est également connu sous le nom de "rollback".

Il prend en charge l'installation des fonctions du programme à la demande.

On peut demander au programme d'installation de n'installer que la version minimale d'un programme au départ. Plus tard, des composants supplémentaires peuvent être installés automatiquement lorsque vous utilisez pour la première fois une fonction qui nécessite des composants supplémentaires.

Il prend en charge l'installation de programmes sans surveillance.

Le programme d'installation prend en charge la création de scripts pour l'installation de programmes selon les instructions de l'administrateur.

Il permet d'éviter certains types de conflits entre programmes

Il n'est pas rare qu'un programme en cours d'installation ou de désinstallation provoque des problèmes avec un autre programme déjà présent sur l'ordinateur, voire que l'ordinateur cesse de répondre (plantage). Windows Installer applique des règles d'installation qui permettent d'éviter les conflits lorsqu'un processus d'installation effectue des mises à jour d'un fichier de bibliothèque de liaison dynamique (DLL) ou supprime un fichier DLL qui est également utilisé par un autre programme existant.


Aperçu des éléments les plus importants de la technologie MSI

Installation Package

Un paquet d'installation contient toutes les informations dont l'installateur Windows a besoin pour effectuer l'installation ou la désinstallation d'une application. Le principal composant d'un paquet d'installation est le fichier MSI, qui est mis en œuvre avec une base de données relationnelle (d'installation). En plus de la procédure d'installation et des fichiers d'installation, beaucoup d'autres informations sont stockées ici, telles que les fichiers CAB supplémentaires requis, les sources d'installation internes et externes, les instructions dans le cas où une version précédente de cette application est déjà installée, ou des informations sur les groupes d'utilisateurs qui sont autorisés à installer cette application.

Installation Mechanism

Une procédure d'installation, si elle réussit, se compose de deux phases, l'acquisition et l'exécution. Dans la phase d'acquisition, toutes les informations nécessaires à l'installation sont lues dans la base de données d'installation. A partir de là, un script est généré qui décrit la procédure d'installation étape par étape. Dans la phase d'exécution, ce script est édité et l'application est installée. Si l'installation échoue, le programme d'installation de Windows rétablit l'ordinateur dans l'état où il se trouvait avant l'installation lors de la phase de retour en arrière. Pour pouvoir effectuer cette étape, un script de retour en arrière est généré pendant la phase d'installation, parallèlement au traitement du script d'installation.

Installation-On-Demand

Les technologies d'installation traditionnelles nécessitent de quitter une application et de relancer une routine d'installation. L'installation à la demande représente une tentative d'éliminer ces étapes. Si un utilisateur souhaite installer une fonctionnalité supplémentaire dans une application en cours d'exécution, il peut le faire directement sans redémarrer l'application. Ce concept est également utilisé lorsque l'utilisateur décide d'installer une nouvelle application disponible (Advertisment).

Components and Features

Lorsqu l'programme d'installation Windows veut installer une application, il la transfère d'abord au concept de composants et de caractéristique. Une caractéristique est une partie d'une application qui ne doit pas nécessairement être installée avec celle-ci. Cette décision est laissée à l'appréciation de l'utilisateur. Un exemple serait l'extension d'un programme de traitement de texte avec un support linguistique supplémentaire. Les composants, en revanche, sont des éléments fixes d'une application et sont toujours installés avec elle. Cela se fait de manière transparente pour l'utilisateur. Les exemples de composants sont des fichiers individuels, des clés de registre, des objets COM, des raccourcis, des bibliothèques, etc.

Advertisement

Le programme d'installation de Windows offre la possibilité d'annoncer la disponibilité d'une application à un utilisateur sans qu'elle soit déjà installée. Il suffit de disposer de l'interface de l'application. Ceci peut être utilisé pour montrer à l'utilisateur de quelle application il s'agit. Ce n'est que lorsque l'utilisateur souhaite réellement l'utiliser que les composants nécessaires sont installés.

Customization

Le programme d'installation Windows peut être utilisé pour effectuer des installations personnalisées pour différents groupes d'utilisateurs. Comme toutes les informations relatives à l'installation sont stockées dans une base de données relationnelle, des modifications peuvent être apportées aux enregistrements de données au moment de l'exécution et influencer ainsi l'installation d'une application. Il serait concevable, par exemple, d'installer une application avec un support linguistique différent selon l'utilisateur respectif.


Transforming (.mst)

source d'informations » About Transforms | Microsoft Docs

Une transformation est un type particulier de fichier de base de données .msi et porte généralement l'extension .mst. Les transformations s'appliquent à la configuration d'une application au moment de l'installation. Ils modifient essentiellement les valeurs par défaut d'un paquet MSI pour contrôler le comportement de l'installation lorsqu'elle se produit. Les valeurs modifiées ne sont pas enregistrées dans le fichier MSI.

Merge-Modul (.msm)

source d'informations » About Merge Modules | Microsoft Docs

Une autre variante du fichier MSI est le module de Merge ou fichier MSM, un groupe de composants qui sont souvent réutilisés dans les configurations d'applications. Par exemple, plusieurs applications tierces peuvent utiliser Microsoft Visual C++ Redistributable (VC-Redist). Au lieu de recréer une configuration pour ces composants partagés dans chaque nouveau paquet MSI, les empaqueteurs d'applications peuvent réutiliser les modules de Merge fournis par le fournisseur de composants partagés. Les modules de Merge sont des fichiers de base de données .msi simplifiés qui ne contiennent que les fonctionnalités et les composants. Souvent, les fichiers de composants réels sont intégrés dans le fichier .msm lui-même. Les fichiers .msm sont ensuite fusionnés avec le paquetage Windows Installer de l'application principale au moment de la création du paquetage.