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

Create self-extracting .EXE from a .MSI file?

I'd think there's a way to do this, but AdminStudio is a bit confusing as to WHERE/HOW to do this:

I've got ONE .MSI file

I've made a response transform (.MST) for it.

Now, I want to "package" BOTH files into a self-running .EXE file so that all the user has to do is run that .EXE and the .MSI runs with the .MST

Basically, an installshield wrapper (I see other companies do this ALL The time)

So how in the world do you make one of these? Repackager seems to be for "old" legacy stuff

Tuner makes the .MST files

Deployer, well it deploys (I don't want that).

Script editor, well that's just a nasty interface if I ever saw one (is it really that hard to make an installshield wrapper file?)
(3) Replies
Here was our solution because we needed to have script ability.
Purchased WInzip self extracter for $40 bucks. Create a setup.bat with a sub folder. Zip it and make an executable,. The setup copied the data from the temp where it is temprarily extracted to be run and copies to a folder and runs. SWSETUP in this case to maintain self-heal / repair ability. Batch looks like this.

@echo off
@echo Copying package to local drive...
mkdir %SystemDrive%\SWSetup\[FolderCreated]
xcopy .\[Subfolder name from zip] %SystemDrive%\SWSetup\[FolderCreated] /e /y /q
@echo Executing Installation
%SystemDrive%\SWSetup\Process\[FolderCreated]\msiexec /i mkdir %SystemDrive%\SWSetup\[FolderCreated]\MSINAME.msi TRANSFORM=mkdir %SystemDrive%\SWSetup\[FolderCreated]\TRANSFORM.mst /qb


Resulting structure looks like this.
Temp Folder/Dev Folder
setup.bat
[Subfolder that includes msi and mst]

If this is the route you decide to take let me know and give you some more info.
Thanks.

I can probably do the same thing with Package for the Web (make a .bat file and have package for the web download the files and run the batch file)

The sad thing is that InstallShield has made it so complex now to do this, that a "simple" task, doesn't appear to be "doable". Either I end up have to manually "build" my own MSI file (eeesh), or I have to make an InstallShield project and import the existing MSI file, but then I lose the transforms.
You can also build a fake project and steal the setup.exe and setup.ini. Tweak the INI to have your product name and CMDLINE= TRANSFORMS=FOO.MST and then take the combined files and feed it into PackageForTheWeb.

But I agree, it'd be nice if Tuner could do all this for you. Who knows, maybe it does in AdminStudio 7, I just don't do repackaging anymore.

Truthly I never liked single setup.exe installs anyways. Sure they are nice for easy downloading and installing, but they are a pain from an msi source resolution perspective. They extract to a TEMP folder that gets cleaned up and now your screwed for repair. Sure you can tell the release manager to cache it in Downloaded Installations but when you uninstall the product there is no automated cleanup of the cache. This can filll harddrives up in a hurry.

Since your using AdminStudio I assume your an enterprise customer. I prefer to keep my packages extracted so SMS 2003 can see the ProductCode inside the MSI file and manage source resilency for me.