gpt4 book ai didi

performance - 提高 Wix msi 安装/卸载的性能

转载 作者:行者123 更新时间:2023-12-04 02:38:12 25 4
gpt4 key购买 nike

在 Windows 7(即 MSI 5.0)中,有一个名为 MSIFASTINSTALL 的属性这将提高安装程序的性能。否则,您可以通过设置属性 DISABLEROLLBACK 来关闭回滚选项。此属性在 MSI 5.0 的早期版本中也可用。

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

编辑:
我通过压缩具有巨大文件集的文件夹并像克里斯托弗所说的那样减小了组件大小,在我的安装中做了一些破解。它极大地提高了性能。是的,当然,我通过执行此概念丢失了 MSI 安装程序模式,这不是推荐的方法。然而,当我们想要实现这一点并且我们的用户真的不希望在我们卸载/升级补丁时有文件版本详细信息时,这是一种权衡。

最佳答案

我有类似的情况,虽然文件数量少了一点,大约 25k。这些文件中的大多数都是图标,从未从一个版本更改为另一个版本。只有一个主要版本(每 2 年一次)可能会给这个领域带来一些变化。 “快速而肮脏”的解决方案是压缩这些图标并将这个文件包含到安装中(不是组件,只是一个与 MSI 并排的文件)。在安装过程中,这个 ZIP 在后台线程中被解压,RemoveFile 表用于在卸载时删除图标。它比将那些 20k 图标作为单独的组件安装要快,即使作为具有许多文件的组件也是如此。一个好的和正确的解决方案是说服主要应用程序开发人员将所有这些 20k 图标放入 20 个 zip 存档中。现在这 20 个 zip 文件作为常规 MSI 组件安装,应用程序知道如何按需提取图标并将其缓存。

我不建议您禁用回滚。虽然您会节省相当多的安装时间,但您会失去一个标准的保证回滚选项。

由于再次回滚功能,卸载比安装需要更多时间。我理解的方式是,当您卸载时,MSI 首先创建每个文件的副本,然后卸载每个文件,如果成功,则删除每个备份文件。因此,卸载时间大约是安装时间的三倍。当我采用默认选项让每个组件有 1 个文件时,我遇到了同样的问题。虽然是推荐的,但如果你处理一个悬而未决的案例,你应该权衡一下。

希望这可以为您解决一些问题。

关于performance - 提高 Wix msi 安装/卸载的性能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2344731/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com