Bootstrapping your product with IExpress.exe

I’ve been following a thread over on WiX-Users entitled `msi to exe` where Afshin Sepehri ( MSFT according to his email address ) asks:

How can I convert an .msi file to .exe?

Now when I first read this I just kind of laughed to myself…. Here we go again… reinventing the wheel because WiX doesn’t have a decent bootstrapper like InstallAware and InstallShield. But then the first round of answers poured in:

John Vottero:

Use IExpress.exe. You probably already have it (it’s part of IE).

Wow, my eyes popped open wide. IExpress is meant to be an administration kit for rolling out IE across an enterprise. Surely Microsoft didn’t intend for it to be used as a bootstrapper by ISV’s. So I had to go look at the EULA

Well again, IANAL… however this seems highly suspect. The license agreement clearly states that this product is for making customized installations of IE for internal distribution or external for companies like ISP. The concept that this would wrap up some other completely unrelated software seems to be flat out against the EULA.

So I asked the question to the group: Is this Legal? The answer surprised me.

John Vottero:

You don’t redistribute iexpress.exe, you redistribute the output of iexpress.exe. I still don’t know if that’s legal.

Wow… splitting hairs, acknowledging that the legality is uknown, yet recommending it’s use for packaging an MSI. The conversation continued and it seems that IExpress.exe has leaked out of the IEAK and is now part of Windows itself.

It still seems strange, it’s still not a good enough bootstrapper to support my needs, but I’m starting to feel safer about using IExpress.exe. Partly because of a TechNet article that described using IExpress.exe to compress some files and add to cmdlines.txt for a sysprep postinstall step.

I guess it’s ok to use, but still a strange road to get here.