We have an MSI developed using Wix 3.10, it contains around 33,200 components associated with one particular feature.
The issue is that when the MSI is launched, the welcome dialog takes a long time to be enabled, roughly around 3-4 minutes on the development environment. The same issue occurs when the particular feature is deselected and selected back for usage.
I suspect the delay seems to be due to standard Custom action such as CostInitialise, FileCost, and CostFinalise.
This behavior hampers the UI experience. Is there a workaround to fix this issue.
MSIFASTINSTALL: Maybe try to set the property MSIFASTINSTALL to
3
in the property table. This is to limit costing and avoid creating a system restore point. This can speed things up quite a bit. Hopefully.Max Package Size: There are a number of size limtations for an MSI file. I am not sure if you have enabled the schema changes required for large MSI packages? See this topic on installsite.org: What are the limits for a large MSI package?
Microsoft Doc: Authoring a Large Package (the schema changes you might need).
Consolidation: Going to incorporate some of the suggestions from the comments here:
msiexec.exe /i C:\Path\Your.msi MSIFASTINSTALL=3 /L*v C:\Your.log
- more on logging from installsite.orgmsiexec.exe /a MySetup.msi TARGETDIR=C:\MySetup
(also see security software interference below).The WiX Burn option also allows you to write your own, external setup GUI. I am not sure how that would help with the installation speed. You would not show your setup's own, slow dialogs, but costing would still run. In would just happen whilst the setup is being run in silent mode (most likely).
Some Links: