自定义.msi包以包含配置文件和脚本

时间:2015-05-21 17:48:21

标签: windows-installer

我正在尝试自定义NSclient ++ .msi包以包含特定于站点的配置文件,并在安装时将脚本添加到脚本文件夹。我还想避免提示要安装哪些功能等。请帮忙!

我做了一些研究并遇到了像Orca,MSI Studio,Admin Studio等工具,我了解到你可以创建一个转换,但之后我该怎么做?如何将变换合并到原始msi?

1 个答案:

答案 0 :(得分:0)

有一些方法可以创建转换,然后有办法将转换永久应用于MSI。换句话说,取MSI v1.0(输入)并创建变换,然后将变换应用于v1.0(输出)的副本。稍后将变换应用于v2.0(输出)的副本,并查看它是否仍然有效而无需重新创建变换。您可能可以这样做,可能不会取决于从1.0到2.0的更改。

有一些工具(如InstallShield)可让您使用UI进行更改,而Window Installer具有用于创建自定义工具的API,以自动执行此过程。我在内部编写了这样的工具,但我还没有作为开源软件发布。

然后就是变化本身的问题。配置文件和脚本可能意味着将文件压缩到CAB中并嵌入MSI以及对Component,File和Media表的更新。摆脱对话框可能是对ControlEvent表的更新,以重写对话流。

这是一个非常广泛的问题,除了我给出的概述之外,它目前的形式无法“回答”。对于MSI专家来说,这是大约4个小时的工作,对于新手来说,这需要数周的上升时间。