有没有一个好的替代安装程序 Install Shield?

20

我正在寻找一款替代Install Shield的应用程序安装工具的建议。

我们目前正在使用Install Shield,但我一直对它不太满意。它过于笨重,脚本系统也很糟糕。

有没有人对其他产品(如WiX、Inno Setup、NSIS或InstallAware等)有更好的使用经验?我不担心成本,但我想要的是一个非常轻巧、易于使用的应用程序,可以捆绑我们的.exe和大约20个支持DLL,注册其中一些,设置一些注册表值和安装帮助。

有人能推荐一些他们正在使用的东西吗?听到已经从Install Shield切换到新应用程序的人的意见也很好。


1
你使用的是哪个版本和项目类型的InstallShield?自从20世纪90年代以来,我就没有编写过“脚本”安装程序了,因为这与Windows Installer和InstallShield的工作方式完全相反。它是一种声明性语言,而不是命令式语言。 - Christopher Painter
嗨,Chris,这个应用程序是用C#编写的,支持dll使用C++和C#。当前的设置开发人员即将离开团队,我已经自愿接手这项工作。我很久没有使用Install Shield了,也许最新版本更好。我只想找出最好和最容易实现的方法,因为我计划对流程进行重大改变。 - Jeff Lundstrom
一个类似的“讨论”,列出每个产品的优缺点:使用哪种安装产品? - Stein Åsmul
4个回答

15

WiX是唯一真正符合“非常轻量级”的MSI打包程序。

虽然可能有陡峭的学习曲线(可以通过使用一些前端设计师来减少),但由Microsoft支持使其成为.NET环境安装的首选。


1
真的吗?你如何定义“非常轻量级”?你可能还注意到,InstallShield LE被微软正式推荐作为Visual Studio部署项目的替代品。无论你选择InstallShield还是WiX,学习曲线都是基于底层的Windows Installer,而不是你用来编写它的工具。 - Christopher Painter
2
@ChristopherPainter WiX在代码和输出方面都很轻巧。它生成的MSI文件仅包含安装所需的绝对数据,而InstallShield会生成冗余的表格和属性。我从未尝试过LE版本,但这并不重要,因为提问者正在寻找InstallShield的替代方案。 - KMoraz
2
好的,海报还说“脚本系统很糟糕”,这让我想知道他是否真正理解InstallShield以及他使用的版本和项目类型。他正在寻找的“替代方案”可以轻松地从InstallScript切换到Basic MSI。此外,虽然我同意XSD比DTD更好,但我也可以在InstallShield中生成没有垃圾表数据并通过所有MSI验证测试的MSI。 - Christopher Painter
谢谢Chris,我对安装盘制作很少涉及,所以我的脚本系统描述更多是基于观察而非经验。一旦我全面评估了当前拥有的工具以及我认为可能替换它的工具,我会让你们知道的。 - Jeff Lundstrom

12

5
对于“What is the best choice for building Windows installers?”的404错误,意味着该页面不存在。 - Adam Lynch
@AdamLynch 对我来说可以。 - rmrrm

6

KMoraz已经给出了我的建议(WiX),所以我只想说:远离NSIS和其他非MSI安装系统。是的,NSIS可以定制和编写脚本。 但是MSI已经成为Windows软件包的标准,并且您不希望偏离该标准,除非您有一个极其独特的理由。管理员已经依赖于MSI的同质性和其清理工作的稳健性,而用户已经将Windows安装程序UX与专业性和质量联系在一起。在放弃这些优势之前,请三思而后行。


0
AdvancedInstaller看起来是一个合理的选择,但我还没有试过 https://www.advancedinstaller.com/ 目前仍在使用InstallShield Express 2018,但由于他们放弃了express产品,对于我的情况来说,InstallShield的价格太高了。 编辑:在上面写的时候,我已经切换到Advanced Installer并发现它运行良好,价格适中,并且有很好的支持。对我来说,最重要的是,从Installshield Express过渡到Advanced Installer非常简单,不需要太多工作。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接