1

我的任务是创建一个安装程序来处理和安装多个 .msi 文件。我几乎走上了 InstallShield 路线,但您需要 Premier 版来创建套件安装,并且说您支付了近 3000 英镑甚至不能让您完全自定义 UI。

对于我们的上一个版本,我编写了一个自定义 Setup.exe 文件,该文件在存储它的同一文件夹中查找我们希望安装的 msi 文件,然后静默安装每个文件。虽然它很基础,但我们现在需要更专业的东西。

目前我有两个主要选择:

  • 使用 WiX - 这是免费的,而且似乎提供了很多可定制性。我还不太确定它到底能做什么,需要一些时间来学习。

  • 我可以扩展已有的内容并构建自己的安装程序,允许用户选择他们想要安装和不想要安装的功能/组件。如果我可以让安装程序从服务器下载所需的 msi 文件,安装它们,然后删除它们,我会更喜欢这个。我只是不想在主安装程序下载中包含一个单独的文件夹,里面装满了 msi 文件。如果没有太多的努力,这可能吗?另外,使用它我可以将单个程序添加到“添加/删除程序”菜单吗?

欢迎任何想法:)

4

4 回答 4

0

它的轻松程度取决于您的设置有多复杂、相互依赖关系及其先决条件。

例如,您想安装产品 X,但它需要安装数据库服务器,需要 .net 框架升级,需要重新启动..

Wix 用于创建 msi,因此如果您想创建一个可以管理多个应用程序安装的 msi,它只会有所帮助。

于 2012-08-24T15:01:26.600 回答
0

WiX 3.6 仍是一个测试项目,Burn 仍在进行中。说实话,InstallShield Suite 安装程序是相当新的,并且仍在进行中。

在您对 InstallShield 的成本感到震惊之前,您需要准确确定 setup.exe 需要能够做什么。然后,您需要在 InstallShield 和 WiX 之间进行功能差距分析,并提出自己的人工估算,在 WiX 中进行并在 InstallShield 中进行。

在某些情况下,现成的工具还不够成熟,推出自己的工具是有意义的。(想想 MS SQL Server、Office、Visual Studio)但对于大多数业务线应用程序,您可能只需要选择最接近您需要的工具。

于 2012-08-24T17:24:31.943 回答
0

我建议查看 WiX 3.6 中 Burn 的功能。您可以创建一个引导程序,它能够从服务器下载您的安装包。您可以完全自定义它或使用标准引导程序应用程序。您也可以使用当前的 .msis。您不必将所有 .msis 转换为 WiX 即可使用引导程序功能。

我建议阅读Rob Mensching 的这篇博文。

于 2012-08-24T15:06:17.513 回答
0

对于需要比您自己的自定义 setup.exe 更专业一点的东西,学习曲线比 WiX 和 Burn 少,并且比 InstallShield 对钱包的痛苦少 - 我建议MSI Factory,而不是 MSI工厂(虽然它会加速你的 WiX 学习)但对于包含在内的引导程序。

学习曲线小于 Burn,并且有 90 天的试用期,因此您可以查看它是否适合您。

InstallShield 将让您自定义安装界面,并且以高昂的价格获得支持和维护(当您从头开始升级时非常有用)。

使用 InstallShield 节省的前期成本,您将在使用 WiX 的时间方面进行投资 - 因此您确实需要进行成本/收益分析并计算出您的时间值多少钱。当您真正开始了解 Windows Installer 及其底层内容时,InstallShield 与 WiX 一样强大。许多商业开发人员将根据个别项目要求使用两者中的元素。

于 2012-08-25T03:49:47.073 回答