具有大量文件的WIX MSI在发布欢迎对话框之前需要

时间:2018-09-26 14:57:52

标签: wix windows-installer wix3.10

我们有一个使用Wix 3.10开发的MSI,它包含约33,200个与一项特定功能相关的组件。

问题在于,启动MSI时,启用欢迎对话框需要花费很长时间,在开发环境中大约需要3-4分钟。取消选择特定功能并重新选择使用时,会发生相同的问题。

我怀疑延迟似乎是由于标准的自定义操作(例如CostInitialise,FileCost和CostFinalise)引起的。

此行为妨碍了UI体验。是否有解决此问题的解决方法。

1 个答案:

答案 0 :(得分:0)

  

石蜡:早期版本中的工具“石蜡”可用于生成包含多个文件的组件。不推荐,但是   可能:   Generate WIX authoring files to contain multiple files under a single component


MSIFASTINSTALL :也许尝试在属性表中将属性MSIFASTINSTALL设置为 3 。这是为了限制成本并避免创建系统还原点。这样可以大大加快速度。希望如此。

最大包大小 :MSI文件有许多大小限制。我不确定是否已启用大型MSI软件包所需的架构更改?请参见installsite.org上的该主题:What are the limits for a large MSI package?

Microsoft Doc Authoring a Large Package(您可能需要更改架构)。


合并 :将在此处合并评论中的一些建议:

  • 日志文件 :创建一个适当的日志文件只是为了拥有更多调试材料:msiexec.exe /i C:\Path\Your.msi MSIFASTINSTALL=3 /L*v C:\Your.log-more on logging from installsite.org
  • 管理员安装 :在执行管理员安装后尝试运行安装。这样可以避免冗长的CAB提取:msiexec.exe /a MySetup.msi TARGETDIR=C:\MySetup(另请参见下面的安全软件干扰)。
  • 对话框集 :为了排除这种情况,如果使用WiX,请尝试使用a different setup GUI编译设置。
  • 安全软件 :一定要在测试安装期间尝试禁用安全软件,以查看防病毒软件或反恶意软件是否杀死了CAB提取程序或阻止了CAB提取。自定义操作或使事情放慢的速度比平常要快。
  • 自定义操作 :查看所有自定义操作,并可能禁用它们以进行测试。只是缩小范围。不是最有可能的候选人,但我已经看到它的发生-通常与安全软件的干扰相结合。
  • 重新组合和分解 :我们经常遇到的“咬咬子弹”选项:将安装程序分成不同的部分,以加快每次安装的安装速度。您可以使用WiX的Burn bootstrapper / sequencer / downloader / chainer依次安装几个MSI文件。
  • 在本地运行 :出于记录,如果您使用网络共享,请复制本地设置,然后重试。

WiX Burn选项还允许您编写自己的外部设置GUI。我不确定这对安装速度有何帮助。您不会显示设置程序本身的缓慢对话框,但是仍然会进行成本核算。只是在以静默模式运行安装程序时(最有可能)。


某些链接