MSI file size increases dramatically when saved with WISE Package Studio
I am working on packaging a third-party piece of software that has an Installshield installer wrapped around a .msi file. I run the Installshield setup.exe then go out to my %TEMP% folder to grab the msi. So far, so good.
The msi is about 35MB. I need to open it in WISE and add a new 1KB file to the install. I do this and I resave the .msi and now it is over 60MB! So I did another test. I opened the original msi file again and didn't make any changes, I just immediately selected the option to compile the msi. Again, over 60MB. What is WISE doing that just opening and resaving the msi would cause the file size to almost double?! Any ideas would be apprecated. Thanks!
The msi is about 35MB. I need to open it in WISE and add a new 1KB file to the install. I do this and I resave the .msi and now it is over 60MB! So I did another test. I opened the original msi file again and didn't make any changes, I just immediately selected the option to compile the msi. Again, over 60MB. What is WISE doing that just opening and resaving the msi would cause the file size to almost double?! Any ideas would be apprecated. Thanks!
0 Comments
[ + ] Show comments
Answers (13)
Please log in to answer
Posted by:
PackageExpert
14 years ago
I understand this is a vendor MSI. Why would you directly edit and compile the MSI when you can do that from a transform? That way your MSI size remain untouched and you prevent yourself from messing with the ever complicated nature of vendor authored MSI's. Since this MSI relies on a wrapper, you may need to modify the ISSETUPDRIVEN property to 1, IIRC..... check that out as well...
Posted by:
t_claydon
14 years ago
Posted by:
anonymous_9363
14 years ago
Day two of your packaging course would have contained the maxim: Thou Shalt Not Directly Edit Vendor MSIs. A few minutes later, your facilitator (there are no longer "instructors", are there?) would have said: "When creating transforms with Wise, always set the MSIs read-only attribue on, because it has a habit of writing stuff in there anyway." Personally, I've never experienced that but a well-respected fellow member on the Symantec Connect forum says he has - many times - so I advise people accordingly.
For the record, Wise adds tables to MSIs for its own use, not simply to "let you know that Wise touched it." Tables like WiseSourcePath which contains paths to the package's original source files is one which springs immediately to mind.
For the record, Wise adds tables to MSIs for its own use, not simply to "let you know that Wise touched it." Tables like WiseSourcePath which contains paths to the package's original source files is one which springs immediately to mind.
Posted by:
t_claydon
14 years ago
Posted by:
cygan
14 years ago
Posted by:
cyberbrad
14 years ago
I know it isn't best practice to touch a vendor's msi, but there have been mutlitple times when I have done so for making minor file changes, and I have never had the file size increase so dramatically before.
I have to have a single msi for deployment reasons. I am using an mst for all the Property changes I need to make, including ISSETUPDRIVEN=1, and will use msitrans to merge the mst and vendor msi into one final msi before deployment. My problem though is that I need to add a couple of additional files to the msi. If I make those changes in the MST, it creates an additional cab file that would need to be deployed (and I need single msi file, no cabs). msitrans does not appear to merge the cab file into the original file. Is there a way to merge the mst's cab file into the msi's internal cab file?
I have to have a single msi for deployment reasons. I am using an mst for all the Property changes I need to make, including ISSETUPDRIVEN=1, and will use msitrans to merge the mst and vendor msi into one final msi before deployment. My problem though is that I need to add a couple of additional files to the msi. If I make those changes in the MST, it creates an additional cab file that would need to be deployed (and I need single msi file, no cabs). msitrans does not appear to merge the cab file into the original file. Is there a way to merge the mst's cab file into the msi's internal cab file?
Posted by:
anonymous_9363
14 years ago
I have to have a single msi for deployment reasonsWhat could they possible be? Any deployment system will be able to cope with specifying a transform, including Group Policy. If it's a "management dictat" thing, go and find the packager's baseball bat we talk about here so often and begin the "education" process.
Posted by:
icbrkr
14 years ago
Posted by:
joedown
14 years ago
Posted by:
cyberbrad
14 years ago
Posted by:
anonymous_9363
14 years ago
Posted by:
cyberbrad
14 years ago
Rating comments in this legacy AppDeploy message board thread won't reorder them,
so that the conversation will remain readable.
so that the conversation will remain readable.