用于在Windows上创建安装程序的API

时间:2008-10-02 21:38:20

标签: windows installer

在Windows上有许多用于创建安装程序的工具(InstallShield,InnoSetup,NSIS,仅举几例)。我见过的所有工具都属于这两个类别中的一个或两个

  • 点和点击。用于创建安装程序的Nice GUI,但无法手动编辑安装程序定义/项目文件。
  • 文本文件:没有(官方)GUI。安装程序是根据手动编辑的文本文件中的定义编译的。

我正在构建的安装程序都是使用DSL(表示为YAML文件)定义的,因此使用GUI是不可能的,尽管可行,但创建文本文件很麻烦。

我真正想要的是一个公开(完整)API的工具,通过它我可以控制安装程序的创建。那里有没有这样的工具?

编辑:我也很想知道非基于MSI的工具。 MSI不是必需的(反之亦然......)

3 个答案:

答案 0 :(得分:6)

Wix 3.0 beta为此提供了.NET支持。我不知道它有多好,但它包括文档。它是一个用于操作安装创建过程和所有优点的类型框架,因此我认为如果您不想,甚至不需要编写一行WiX XML。

答案 1 :(得分:1)

WiX是一个很棒的工具,但你必须做很多直接编码才能让事情发生。幸运的是,文档非常好,并且有几个GUI工具,例如SourceForge上的WixEdit,以帮助完成此过程。

答案 2 :(得分:0)

嗯,您可以使用Windows Installer API直接创建MSI文件,但我认为您最好使用WiX。

“直接编码”将比直接处理Windows Installer API要少得多,我猜这可能是你所需要的“低级别”。根据您的目的,您可以使用WiX生成MSI,然后使用API​​调整它。

生成XML有什么问题?这真的是你最简单的选择......你不需要手动编辑它,只需编写自己的代码就可以从你的DSL文件和一些模板中生成所需的XML。