- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Re: Tips and Tricks for faster installer builds?
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
Tips and Tricks for faster installer builds?
My current project has 1 ism, with 1 release configuration producing a compressed web format setup.exe wrapped .msi containing 4,300+ files across 170+ directories, which I then configure/ compile into 20 different unique installers using ISCmdBld.exe.
Currently this process takes almost 2 hours to build, and is the most time consuming step of our build.
Anyone know of any tips, trick, hacks, methods, processes, best practices, white papers, or other documentation to expedite build time?
I have a few for you:
1. Don't use COM Extract at build where you don't need to. This adds significant overhead, because the library has to load, do its thing, and then have the *.reg stuff processed. You can instead use Self-regstration or Static COM Extraction (i.e. in the COM Regstration view of the component select to "Extract COM Information for key file"). Pros: Could make a huge difference in build time, Cons: You either shift the burdens of registration failure from build time to design time (time consuming, and you could miss changes to the library's interfaces if you're not automatically extracting) or to the Runtime (self registration introduces points of failure). Every way you can skin this cat has pros and cons with regards to risk vs. performance.
2. Use a fast disk for the staging/build target location.
3. Don't have the build process pull the source files from the network (stage locally and build).
4. Don't build the project directly to the network (copy when done)
5. Depending on your requirements, you might save some build time by disabling the creation of file hashes inside the installers. This is very IO intensive, you can imagine, and could involve your install time going up due to unnecessary file overwrites:
https://msdn.microsoft.com/en-us/library/windows/desktop/aa370532(v=vs.85).aspx
Just off the top of my head.
It's possible there's some other parts that take a good long time which are candidates for some optimization. What do your build logs indicate is taking a long period of time?
Cary R wrote:
It's possible there's some other parts that take a good long time which are candidates for some optimization. What do your build logs indicate is taking a long period of time?
Am I missing something? Even with verbose mode turned on (IsCmdBld -v), I don't get a step by step breakdown of duration.
Thanks for the other tips, this is exactly what I was hoping for; but yes, I too picked up on the obvious - use a fast disk, keep it all local on the fast disk, don't build stuff you don't need to.
Chad
We are struggling with the same issue with IS 2019. There have been zero improvements in the time taken to build the MSI since IS version 2012.