MSI Stream bloat
Anyone know of tools to get rid of unused streams in an msi?
Using Wise to convert an MSI to a WSI it seems to leave the cab stream stuck inside the wsi. This has caused a wsi that should be 1-2mb to be around 44 mb.
Then when it is compiled, the MSI becomes twice as large.
One thing I could try is export the wsi logic to xml then recreate the wsi from scratch. But again a Wise bug means I can't create the xml. (Thanks guys!)
Why does my job seem to be working around bugs in a program that costs a fortune? [:(]
Using Wise to convert an MSI to a WSI it seems to leave the cab stream stuck inside the wsi. This has caused a wsi that should be 1-2mb to be around 44 mb.
Then when it is compiled, the MSI becomes twice as large.
One thing I could try is export the wsi logic to xml then recreate the wsi from scratch. But again a Wise bug means I can't create the xml. (Thanks guys!)
Why does my job seem to be working around bugs in a program that costs a fortune? [:(]
0 Comments
[ + ] Show comments
Answers (3)
Please log in to answer
Posted by:
revizor
19 years ago
Posted by:
jendres
19 years ago
Found a solution if anyone is interested.
msidb.exe that comes with the SDK.
Copy the wsi to a temp directory and rename it as msi.
Create a tables sub-directory.
Run msidb.exe and open the msi.
select the tables directory.
select all tables.
export.
copy a base template wsi to the directory. (might be able to do it with any file but this is what I did.)
rename this template to msi extension.
Re-run msidb and open the tempalte msi
select the tables directory.
select all tables.
import and save.
Rename back to wsi and there you have the proper file.
Copy this back to your project directory.
This puts in just the table and binary info and removes all the bloat. (changed my 44 mb file to 1mb)
msidb.exe that comes with the SDK.
Copy the wsi to a temp directory and rename it as msi.
Create a tables sub-directory.
Run msidb.exe and open the msi.
select the tables directory.
select all tables.
export.
copy a base template wsi to the directory. (might be able to do it with any file but this is what I did.)
rename this template to msi extension.
Re-run msidb and open the tempalte msi
select the tables directory.
select all tables.
import and save.
Rename back to wsi and there you have the proper file.
Copy this back to your project directory.
This puts in just the table and binary info and removes all the bloat. (changed my 44 mb file to 1mb)
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.