So for years I have been building MSI's with external cab files (Weapon of choice, InstallShield, other tools are available)
So when you kick of a project, one of the first things is to get the Standards all sorted out. Invariably someone there 'used to be technical, or used to 'do packaging'. This is where the first issues come and I think it starts to make it clear how long the other people used to do packaging.
It starts with 'Thou shalt deliver blah blah..., a single MSI.'
The main argument I hear for internal cabs is that 'everything is together, so nothing will get lost'.
This seems strange. An MSI is normally just a part of the deliverable, we normally supply a folder, with the supporting documents, the MSI (and a CAB file) and some CMD files that can be used to install and remove the MSI.
Why am I a fan of internal cabs??
I reckon they build faster and install quicker.
I also like the idea that since we hand packaging over the business, if they need help with an MSI they have created they can email an MSI (without the external CABs) quite easily.
Antivirus can scan the external CABs for anything nasty. (That reminds me of another story..... thank fully it was not me that captured the Virus and leaving it in the MSI), but I digress.
To a degree, a normal mortal can open the CAB file to see if the file is in the MSI (if they dont have access to an MSI editor and don't know how to do an Admin install) which is sometimes handy.
Another reason to be a fan: Recently I have made a package, 146 components, (no big deal), 17,600 files (a bit more serious). At a client site I don’t come to very often, click build, and loh and behold.. a single MSI! (Someone has been playing with my templates)
Validate it in Orca (yes I know you can do it from InstallShield) takes a looooooong time.
Rebuild the MSI, this time, with my preferred format, a single external CAB file. Validate it in Orca, seems to not take very long. Sort of an expected amount of time.
Doing a bit of testing to give credibility to my findings: both MSI's are the same. The one with the external CAB file finishes its validation before the compressed one gets through the ICE03 check. Bearing in mind with the stats above, it has quite a lot to do for the ICE03 check.
The other reason people say that compressed MSI’s are better are the ones that believe it helps with the self-repair. Thankfully we won’t have any of those comments here…