2011-12-15 34 views
1

我有大量(> 500)的数据包(而不是程序文件),它们可以独立安装。数据包由我们的应用程序使用。什么是安装这些数据包的最佳方式?我想到了隐藏在删除软件控制面板中的msi文件。引导程序将用于选择要安装的软件包。安装大量的数据包

可能很难生成大量的msi文件并且很难为大量的msi文件生成更新。

这样的情况有更好的选择吗?

回答

1

这取决于您的具体要求和数据包的大小,但使用具有500个功能的单个安装程序可能更容易。在这种情况下,它也不需要从控制面板隐藏。您可以从引导程序或脚本自动安装所需的功能,请参阅WIX: How to Select Features From Command Line

无论哪种方式,如果您使用单个msi或500个不同的msi,我会建议投资代码生成来创建wxi文件。并使用代码生成器来同时生成支持文件,如引导程序。当你有一个更新时,你会希望代码生成器做的最多,以避免必须做相同的更改500次。可能有可能使用T4,参见this example

+0

我打算使用MajorUpgrade作为更新机制。 MajorUpgrade执行卸载,然后进行安装。我不想卸载所有数据文件来更新程序。 – frast 2011-12-16 13:44:44

2

如果所有这些软件包都是真正独立的,那么使用您提出的机制可能是有道理的。如果软件包都非常小,则会进行权衡,因为Windows Installer会为每个软件包添加一些启动命中。如果您可以合并一些可能一起更新的软件包,这可能有助于减少MSI的数量。

500只是很多独立的软件包。相比之下,所有的Visual Studio(一个巨大的产品,恕我直言)由130个MSIs组成。

我可以看到如何做到这一点以及使用烧录在WiX的V3.6

+0

我看了一下烧伤了一下。我想我需要修改它以满足我的需求。有没有一种功能树来选择用户想要安装的MSI? – frast 2012-02-20 22:37:00