MSI: How to speed up ExecuteAction
In my current MSI ExecuteAction takes at least 1m 30s. I created a simple msi (from WiX exam开发者_运维百科ples) and it takes about 4 seconds for ExecuteAction.
How can I optimize my MSI package, so ExecuteAction will run faster?
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, 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 second
- Windows Vista: 7 seconds
- Windows 7: 13 seconds
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.
精彩评论