在Windows 7(即MSI 5.0)中,有一个属性称为 MSIFASTINSTALL 这将改善安装程序的性能。否则,您可以通过设置属性disablerollback关闭回滚选项。此属性也可以在MSI 5.0的早期版本中获得。

请分享您的知识以改善安装体验。另外,我找不到改善卸载性能的正确方法。我们使用大量的文件/文件夹(超过70,000)和35000等组件。它挂在文件成本核算过程中,不知道如何避免此延迟。有时会悬挂超过2或3个小时以在XP或Vista机器中卸载

编辑: 我在安装中进行了一些黑客攻击,通过将文件夹拉开,该文件夹具有巨大的文件集,并像克里斯托弗(Christopher)所说的那样缩小了组件大小。它大大提高了性能。是的,当然,我通过执行此概念丢失了MSI安装程序模式,不建议方法。但是,当我们想实现这一目标时,这是可以进行权衡的,而我们的用户确实不想在我们卸载/升级补丁程序时拥有文件版详细信息。

有帮助吗?

解决方案

我也有类似的情况,尽管文件数量少一些,大约25k。这些文件中的大多数是图标,它们从未从一个版本更改为另一个版本。只有主要版本(每2年一次)可能会给该领域带来一些变化。 “快速且肮脏”的解决方案正在将这些图标汇总,并将此单个文件包含在安装中(不是组件,只是与MSI并肩文件)。在安装过程中,该拉链是在背景线程中提取的,并使用RemoveFile表用于删除卸载上的图标。它比将这些20K图标作为单独的组件(即使是许多文件的组件)更快。一个好的解决方案是说服主要的应用程序开发人员将所有这些20k图标都放入20个邮政编码。现在,将这20个ZIP文件安装为常规MSI组件,并且该应用程序知道如何按需提取图标并缓存。

我不建议您禁用回滚。尽管您将节省很多安装时间,但您将失去标准保证的回滚选项。

由于再次具有回滚功能,卸载比安装需要更多的时间。我理解它的方式,当您卸载时,MSI首先创建每个文件的副本,然后卸载每个文件,并在成功的情况下删除每个备份的文件。因此,卸载时间约为安装时间的三倍。当我采用默认选项为每个组件具有1个文件时,我也遇到了同样的问题。尽管建议使用,但如果您处理未偿还的案件,则应该进行权衡。

希望这能为您清除一些东西。

其他提示

改善应用程序性能的最佳选择是减少文件和组件的数量。尽管您可以对MSI进行一些调整以提高性能,但过量的文件/组件是核心问题,将是您所做的任何性能改进的门控因素。为什么需要安装70k文件?

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top