1

为 asp.net 应用程序创建安装程序的最佳工具是什么?我的目标是:

  1. 在 iisexpress 上安装 asp.net 应用程序
  2. 安装 sqlexpress(作为先决条件)
  3. 为我的应用程序配置 IIS
  4. 恢复sqlserver上的数据
4

2 回答 2

6

两者都可以解决问题,因此取决于您的需求是什么,以及它们如何相互叠加

安装盾牌

  • 将比 WiX 更多地指导您完成整个过程,因此会让您更快地起步

  • 内置了与 IIS、SQL 和许多其他来源对话的功能

  • 具有用于安装许多先决条件的内置功能,例如 .NET。我相信支持将 sqlexpress 安装为先决条件。

  • 可以针对 InstallScript、MSI 或两者的混合

维克斯

  • 是免费和开源的。

  • 在组织代码方面更加灵活。它使用类似于 InstallShield 的 XML,但与 InstallShield 不同的是,您可以完全控制代码的组织方式,并且通常更容易在源代码控制系统中比较和合并代码。

  • 非常可扩展 - 您可以通过 WixExtensions 挂钩到编译器机制

  • 具有通过自定义操作和语法扩展与 IIS 和 SQL 对话的功能

  • 附带 Burn,一个灵活而强大的引导程序,安装 chainer 和安装主机。这可以为您处理您的先决条件安装,甚至托管您的 UI。

结论

就个人而言,我建议学习 WiX——随着时间的推移,大型项目的代码更容易管理,而且由于它的可扩展性,你不太可能遇到无法完成工作的砖墙。

但是,您需要更长的时间才能起步,因为您必须比使用 InstallShield 更深入地了解正在发生的事情。

于 2012-12-19T12:28:28.510 回答
0

我目前正在将项目从各种版本的 InstallShield 迁移到 Wix。您需要在 Wix 上投入更多精力,但从长远来看,这是值得的。我发现 InstallShield 的问题是它的许可相对昂贵,一旦你开始使用它,你就会着迷于支付更多的钱来升级它或获得最新版本,因为最后使用它的人已经不在了,许可证密钥误入歧途,无论如何都没有足够的许可证密钥,曾经工作的许可证密钥由于某种奇怪的原因不再起作用......等等,等等。没有最新且正常工作的许可证密钥,InstallShield 将无法工作.

因为安装项目不是我们一直使用的东西,但是当我们使用它时,我们需要它来工作,所以我决定放弃 InstallShield 以获得更可靠的东西(在许可方面)。

于 2012-12-19T14:49:38.160 回答