我们的产品可以选择连接到SQL,MySql和&甲骨文。
我想要运送连接所需的所有dll,无论成员想要什么,但这会增加msi的大小。 (使用ms build)
我可以在Wix中使用某种类型的组,并且基于参数运行时它会选择要发布的dll吗? 或者可能有多个.wxs文件(每个数据库驱动程序一个),运行时决定选择哪一个?
答案 0 :(得分:2)
将不同数据提供者的文件整理成不同的功能。然后使用基于变量的预处理程序语句来包含或排除构建中的功能。最后将变量传递到WiX构建中以进行评估。您还应该提供不同的MSI唯一的ProductName,ProductCode和PackageCode属性。可能是相同的UpgradeCode。您可能还需要考虑安装程序中的检查,以确保一次只安装一个变体,除非您安装到不同的目录并且您的组件完全被设计隔离。
另外,如果三个数据提供者是你唯一的变异点,那么我想你只有7个变种。您可能希望预先构建那些7,然后将内容发布到您的分发渠道。