你能在多个安装程序之间共享wix片段吗?

时间:2011-01-10 22:21:11

标签: wix wix3.5

我们希望OEM产品包括单独的安装路径,exe名称,等等......

但我们当然希望尽量减少维护产品所需的维护开销。

我当然知道我们可以重复使用片段文件,并使用product.wxs文件将它们映射到不同的目录。但这样做是个好主意,因为我们将重复使用文件的GUID。

现在这些文件将是完全相同的文件,但它们可能安装在不同的目录中。

如果有人能指出一些用WIX管理多个OEM安装程序的好资源,我会非常感激。

1 个答案:

答案 0 :(得分:2)

可以在多个产品上下文中重用ComponentID。这基本上是合并模块在被多个产品使用时所做的事情。

是的,您可以使用片段进行代码重用。这是一篇关于这个主题的老博客文章: Using the WIX Toolset for Distributed Development

基本上,您想要想出一种方法,在产品wxs中定义Directory元素,然后在资产包含中使用DirectoryRef元素。您的Asset片段也将具有Fragment元素和ComponentGroup元素。然后在您的Product wxs中,您可以使用嵌套在Feature元素下的ComponentGroupRef元素将组件拉入您的特征。

一些规则......

1)您必须将所有wxs文件传递给蜡烛,以便编译器解析符号。

2)一旦从片段(FragmentRef,ComponentRef,ComponentGroupRef ...)中引用了某些内容,就会包含片段中的所有内容。例如。片段是原子的,密封就像合并模块一样。