我正在为客户创建一个安装程序,但我知道我必须在几周内为另一个客户创建另一个安装程序。人们使用什么技术来保持整洁?唯一的区别是是否包含安装程序的某些dll以及要包含的初始配置文件。
我正在考虑创建一个主wxs文件,其中包含大部分共享安装信息,以及一个辅助文件,该文件将自定义到客户端,以控制应包含哪些组件。
要么为每个客户端重写主wxs文件,要么为每个客户端维护一个包含大量重复信息的完整wxs文件。
我认为很多其他人遇到过这种情况,我想知道我是否走在正确的道路上,或者是否还有其他更好的解决方案。
感谢任何帮助,Neil。
答案 0 :(得分:0)
您选择的解决方案将取决于不同客户端安装程序之间的差异程度以及您必须支持的客户数量。
如果您只需维护2-3个客户端安装程序,它们之间最多包含10个变量文件,则只需创建一个共享的.wxs文件,该文件根据构建时参数引入特定于客户端的.wxi文件。手动创建和维护2-3个特定于客户端的.wxi文件非常容易。
如果您需要维护更多客户端,或者有50种不同的dll / config文件排列,我会使用WiX的heat.exe“收集器”工具。您将为每个必须支持的客户端创建一个临时目录,其中包含每个安装程序所需的dlls / config文件,使用heat将每个目录收集到单独的.wxs文件中,然后创建一个可以编译的单个共享.wxs文件每个不同的收集.wxs文件以创建客户端安装程序。此解决方案要求构建过程稍微复杂一些,但它比尝试维护20个不同的特定于客户端的wix文件更容易。