web-dev-qa-db-fra.com

Quelles sont les différences spécifiques entre le fichier .msi et le fichier setup.exe?

J'ai beaucoup cherché, mais toutes les réponses sont devinées. Aidez-moi à trouver la réponse exacte.

169
Babu

Un MSI est une base de données Windows Installer. Windows Installer (un service installé avec Windows) l’utilise pour installer des logiciels sur votre système (copier des fichiers, définir des valeurs de registre, etc.).

Un fichier setup.exe peut être un programme d’amorçage ou un programme d’installation non-msi. Un installateur non-msi va extraire les ressources d'installation de lui-même et gérer leur installation directement. Un bootstrapper contiendra un MSI au lieu de fichiers individuels. Dans ce cas, le fichier setup.exe appellera Windows Installer pour installer le MSI.

Quelques raisons pour lesquelles vous pourriez utiliser un setup.exe:

  • Windows Installer n'autorise l'installation que d'un seul MSI à la fois. Cela signifie qu’il est difficile d’avoir un MSI pour installer d’autres MSI (par exemple, des dépendances telles que le framework .NET ou le runtime C++). Comme un fichier setup.exe n'est pas un MSI, vous pouvez installer plusieurs MSI en séquence.
  • Vous voudrez peut-être un contrôle plus précis sur la gestion de l'installation. Une MSI a des règles très spécifiques sur la façon de gérer les installations, y compris l'installation, la mise à niveau et la désinstallation. Un fichier setup.exe donne un contrôle complet sur le processus de configuration du logiciel. Cela ne devrait être fait que si vous vraiment avez besoin d'un contrôle supplémentaire, car cela demande beaucoup de travail et qu'il peut être difficile de bien faire les choses.
203
Kevin Kibler

Les fichiers .msi sont des fichiers du programme d’installation Windows sans le programme d’exécution de Windows, setup.exe peut être n’importe quel programme exécutable (probablement un programme qui installe des éléments sur votre ordinateur).

11
thbusch

MSI est un fichier d'installation qui installe votre programme sur le système en cours d'exécution.

Setup.exe est une application (fichier exécutable) dont le fichier est un fichier msi en tant que l'une des ressources. L'exécution de Setup.exe exécutera à son tour msi (le programme d'installation) qui écrit votre application sur le système.

Edit (comme suggéré dans le commentaire): Les fichiers exécutables d'installation n'ont pas nécessairement une ressource MSI en interne

6
The Godfather