.msi和setup.exe文件有哪些具体区别?

时间:2009-11-24 11:38:36

标签: windows-services installer windows-installer

我搜索了很多,但所有人都猜到了答案。帮我找到确切的答案。

4 个答案:

答案 0 :(得分:196)

MSI是Windows Installer数据库。 Windows Installer(随Windows安装的服务)使用它来在您的系统上安装软件(即复制文件,设置注册表值等)。

setup.exe可以是引导程序或非msi安装程序。非msi安装程序将从自身中提取安装资源并直接管理其安装。引导程序将包含MSI而不是单个文件。在这种情况下,setup.exe将调用Windows Installer来安装MSI。

您可能想要使用setup.exe的一些原因:

  • Windows Installer一次只允许安装一个MSI。这意味着很难让MSI安装其他MSI(例如.NET框架或C ++运行时之类的依赖项)。由于setup.exe不是MSI,因此可以使用它按顺序安装多个MSI。
  • 您可能希望更精确地控制安装的管理方式。 MSI对如何管理安装有非常具体的规则,包括安装,升级和卸载。 setup.exe可以完全控制软件配置过程。只有当你真的需要额外的控制时才应该这样做,因为它需要很多工作,而且要做到这一点可能会很棘手。

答案 1 :(得分:10)

.msi文件是没有Windows安装程序运行时的Windows安装程序文件,setup.exe可以是任何可执行程序(可能是在您的计算机上安装内容的程序)

答案 2 :(得分:7)

MSI 是一个安装程序文件,用于在执行系统上安装程序。

Setup.exe 是一个应用程序(可执行文件),其中包含msi文件作为其中一个资源。 执行Setup.exe将依次执行将应用程序写入系统的msi(安装程序)。

答案 3 :(得分:-7)

MSI基本上是Microsoft内置于Windows中的安装程序。它将组件与功能相关联,并包含安装控制信息。该文件不必包含实际的用户所需文件,即用户期望的应用程序。 MSI可以在其中包含MSI包装的另一个setup.exe,它实际上包含用户所需的文件。

希望这能让你怀疑。