MSI:如何加速 ExecuteAction [英] MSI: How to speed up ExecuteAction
问题描述
在我当前的 MSI ExecuteAction 至少需要 1m 30s.我创建了一个简单的 msi(来自 WiX 示例),ExecuteAction 大约需要 4 秒.
In my current MSI ExecuteAction takes at least 1m 30s. I created a simple msi (from WiX examples) and it takes about 4 seconds for ExecuteAction.
如何优化我的 MSI 包,让 ExecuteAction 运行得更快?
How can I optimize my MSI package, so ExecuteAction will run faster?
推荐答案
Windows 使用 ExecuteAction 来启动 系统还原点.根据您的机器配置,这可能需要很长时间.在对我们公司的安装程序进行性能测试时,我们遇到了 5 到 26 秒的运行时间.
Windows uses ExecuteAction to initiate a system restore point. Depending on your machine configuration, this can take quite a while. During performance testing our company's installer, we encountered elapsed times of 5 to 26 seconds.
Windows XP 似乎在默认情况下不会创建系统还原点.但是,Windows Vista 和 Windows 7 可以.以下是我们在 24 台机器上的测试结果(平均值):
Windows XP, it seems, by default, does not create system restore points. Windows Vista and Windows 7, however, do. Here are our test results over 24 machines (averages):
- Windows XP:1 秒
- Windows Vista:7 秒
- Windows 7:13 秒
有一个适用于 Windows 7 的解决方法(在 Windows Installer 5 中).这是 MSDN 文章.解决方法是禁用安装程序的系统还原点.以下是 WiX 中的解决方法:
There is a workaround for Windows 7 (in Windows Installer 5). Here is the MSDN article. The workaround is to disable the system restore point for the installer. Here is the workaround in WiX:
<Property Id="MSIFASTINSTALL" Value="1"/>
这里是与您的问题相同的另一个示例,我在其中找到了解决方案.
Here is another example of the same problem as yours where I found the solution.
这篇关于MSI:如何加速 ExecuteAction的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!