在msi中WIX同一文件的多个副本,但只安装一个

时间:2011-01-04 15:55:52

标签: wix wix3.5

我有多种环境,构建,测试,产品等。

我想在wix中创建一个安装程序,它可以容纳多个machine.config文件。然后根据通过命令行传入的特征值,只安装一个文件。

概念说这听起来很容易,但我收到一条说明

的ICE30错误

“ICE30:目标文件'btfrgsa_ | [FILENAME]'由LFN系统上的两个不同组件安装在'[TARGETDIR] \ NETFRAMEWORK40FULLINSTALLROOTDIR64 \ CONFIG \'中:'MachineConfigs.WS'和'MachineConfigs.APP'。这打破了组件引用计数。“。

最好的方法是什么?

感谢

Semaj

1 个答案:

答案 0 :(得分:6)

有两种方法:

  1. 使用不同名称的文件(1.config,2.config)创建多个功能和组件,然后使用CopyFile元素将x.config复制到实际文件名。这将导致部署x.config和real.config,但它是无害的,卸载将干净利落。

  2. 确定x.configs之间的差异,并使用XML更改在安装时使用xpath语句应用它们。