cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Kovalenko
Level 6

Extract .msi from .exe (web media)

I need to specify previous version of MSI for current build. But I have a single .exe built. How can I extract .msi from .exe (in command line)?
Labels (1)
0 Kudos
(11) Replies
Fred_Oisund
Level 4

The msi file itself will be decompressed to a temporary folder when you launch setup.exe.

Just launch it and look for a folder similar to this:
C:\Documents and Settings\\Local Settings\Temp\{SOME RANDOM GUID}

Modification time of the generated directory will help you locate the correct one....

Regards
Fred
0 Kudos
Kovalenko
Level 6

Yes, Fred, I know about where I can locate it, but I need to extract it without starting the installation. I need to do it in command line during automated builds.
0 Kudos
Kovalenko
Level 6

No one has encountered a need in extracting .msi from .exe?
0 Kudos
Fred_Oisund
Level 4

How about maintaining 2 builds, one compressed setup exe and one uncompressed cd image, and specifying the uncompressed previous version for both?

If i'm not mistaken, specifying the previous msi is only necessary when building patches, upgrade validation can be done from compressed images, right?
0 Kudos
Kovalenko
Level 6

1. No two builds. There are a number of builds being done. They take time, plus running unit tests. More over we use source control. As a result I will need to create two IS setup projects that I will need to keep synchronized.
2. I am not sure about this. But I can say from what I came to is - yes, specifying previous version is needed when building patches. But I do not know if compressed images can be used for upgrade validation, because open dialog filter has only *.msi filter set up.
0 Kudos
Fred_Oisund
Level 4

For validation you may use the compressed exe file, the drawback is that IS needs decopresses them to validate, so the whole process goes even slower.

At least in my GUI the the inputfilter is *.msi, *.exe when specifying upgradable versions.
0 Kudos
Kovalenko
Level 6

Hello Fred,

I would like to clarify: do you mean that in "Release wizard" -> "Advanced settings" -> "Patch optimization (Optional)" section -> "Open dialog" to select "Previous package" you have filter for both .msi and .exe?

PS I ask, because in "Patch Design" view and in "Upgrades" view there is in fact filter for both .msi and .exe.
0 Kudos
Fred_Oisund
Level 4

I was referring to the "Upgrades" view.
0 Kudos
Kovalenko
Level 6

I see. But I do it in "Release wizard" that differs from the way you describe. In there I have no .exe in filter. I tried to specify previous package manually so that it indicates to .exe and it argued:

ISDEV : warning -6620: Could not open the reference package '{path to .exe}' for key synchronization

It seems to be a dead lock...
0 Kudos
Fred_Oisund
Level 4

Hi, I found the parametres for setup.exe documented here.

Perhaps the /extract_all parametre helps you out then?


/extract_all: : Package's files should not be run but simply extracted (InstallScript and InstallScript MSI projects only)

Specifies that a self-extracting package's files should not be run but simply extracted to the location that is specified by .
0 Kudos
Kovalenko
Level 6

Hi Fred,

My project is of Basic MSI type and it does not work with it - I have tried already.
0 Kudos