View Full Version : Migrating from Wise

07-29-2002, 01:46 PM
Currently our software is distributed using Wise for Windows Installer 3.5, but we are considering purchasing InstallShield Developer to replace Wise.

If we do purchase InstallShield, we will most likely begin using it on minor point release upgrades of our software since we just recently released a major version.

Can anyone inform me of any issues I need to be aware of when migrating to InstallShield. Are there any specific installer issues that would prevent our customers from using an InstallShield installer to upgrade a product that was originally installed using Wise?



07-29-2002, 07:20 PM
For what its worth, I just completed a similar exercise for a moderately complex, COM-heavy app using an (Installshield) Standard project type, coming from Wise InstallMaster 8. I have cooked some mondo IS scripts in the past (ver 3 & 6), and that probably helped, but some of the issues I had wth IS7 included:

Install the IDE from CD, NOT from the web, and be sure to download and install the lastest Service Pack before starting anything:
I had a big old hairball straghtening out my registration because I could not wait for the CD and chose instead to install from the web.

COM Registration:
Self-registration is evil: Let MSI handle registration (it does it out of the box anyway), or fire off LaunchApp RegSvr32 commands at the end of the OnFirstUIAfter event handler to register your components the hard way. In some cases, I had no choice but to do it the hard way.

Design your Type-Feature-Component hierarchy up front:
There is a one->many relationship between them, and for some reason I could not deal with that until I got it in front of me on paper. Once done tho, it was alot easier to grok.

Add Components to each Feature as you go:
If you find that your payload has missing file(s), then you probably forgot to add the Component that represents the file(s) to the specified feature. Another build cycle: Arrgghh!

And speaking of Components:
It may seem like overkill, but I created a Component for all but the most trivial files in my payload. I ran into numerous PBKAC until I did this (doh!).

Merge modules (MM) don't always behave as advertised:
In particular, I found weirdness in MM for MSDE2k (ended-up invoking msiexec instead: easier to control), anything that smells like Crystal Reports, and the Winsock module. Also, reboot requirements may force you to bag using the MDAC MM, and opt for a LauchAppAndWait on mdac_typ.exe instead.

Crystal Reports (one of my depends):
I ran into a big registration hairball when installing the Crystal Report 8.0 Merge Module on system with existing Crystal components, the most significant being that Crystal had changed Registry permissions on its keys somehow, causing the installer to fail when attempting to register the incoming components and rolling back the whole event. Save yourself: Download and run Scr8_webregfix.exe (from thier support site) at the first sign of weirdness.

Avoid building with compression until you are ready to deploy (duh):
Either that, or bring your gameboy to work so you have something to do while building. I finally beat Donkey Kong Village, so it wasn't a complete waste.

At the risk of sounding like an IS pundit (which I am not), one of things that helped me ALOT was the book "Getting Started with InstallShield Developer and Windows Installer Scripts" by Bob Baker (InstallShield Press, 2002, ISBN 0-9715708-0-9). All the help file example code is great, but I needed Process and MSI background, and it filled those gaps for me.

My 0.02.