WiX - 如何通过功能进行模块化?

时间:2015-03-26 23:47:11

标签: wix modularity

我想使用WiX和EmbeddedGUI进行MSI安装。我真的想让它高度模块化 - 即主MSI将只包含基本文件(必需的),所有其他功能将被拆分为单独的MSI文件,如果硬盘驱动器上没有,将从互联网上下载。仅在我的EmbeddedGUI中选择时安装。

但我对WiX完全不熟悉,我找不到实际如何制作模块的方法? MS Office和MS Visual Studio似乎正在使用这种方案,通过使用它通过互联网下载的模块并在需要时安装它们 - 如下所示: Visual Studio Installer

似乎Fragments主要是“静态库”,而不是“动态库”,在这种情况下更有用。还有链接机制,但我不确定我是否能够将功能捆绑为同一个应用程序(“安装/删除”窗口中只有一个条目),因为它似乎完全独立地调用外部MSI(更像是调用“单独的exes”而不是加载“动态库”)。

那么,使用WiX制作高度模块化的安装包的方法是什么?

1 个答案:

答案 0 :(得分:3)

使用捆绑(链)。管理软件包的Burn引擎只会在“添加/删除程序”中显示该软件包,并且可以下载任何已经存在的软件包 - 例如,使用MsiPackage/@DownloadURL attribute