Video Screencast Help
Search Video Help Close Back
to help
Not able to make it to Vision this year? Get a sampling in the Best of Vision on Demand group.

Slow startup time pacakge

Created: 07 Apr 2011 | 1 comment
Tom.b's picture
0 0 Votes
Login to vote

Hello,

I have a big package that start much slower then the vendor based installation.
Monitoring shows that during the startup he queries the keys:
HKLM\Software\Microsoft\Windows\CurrentVersion\Installer\UserData\S-1-5-18\Components\

The package doesnt' repair he just queries alls the components keys . I know that if i invoke an entry point the MSI checks all the key phats for all components in that feature.

I always thought that first he checks all the components and then starts the application. But i see the startupscreen when he queries the keys.

What is the best way to improve the startup speed, if i put the executable in a seperate feature will this perform a faster startup time.

Discussion Filed Under:

Comments

EdT's picture
07
Apr
2011
0 Votes 0
Login to vote

When you start an MSI from an

When you start an MSI from an advertised shortcut, EVERY keypath in every component of the feature containing the advertised entry point is checked, plus every keypath of every component in any parent feature(s).

If this is a big application and you have used the standard rule of 1 file per component, then windows installer may have to check several thousand key paths before the application can start.

The only way to improve the startup speed is to reduce the number of keypaths. For big applications, this is most often achieved by grouping many files into a single component, usually making an EXE or DLL the key path, or at least a file that will not change during execution. (Never make data files the key path in a component, as they may change during execution and cause the application to try to heal the file back to its original state next time you start it.

Was the vendor install also an MSI, or did you capture a legacy install with WPS ?

If your issue has been solved, please use the "Mark as Solution" link on the most relevant thread.