I recently did a couple of projects for clients that involved running several third party installations silently from the script. These were both InstallScript MSI projects. I have done this many times over the years, but this time I encountered something different.
I found that silent installs of third party installations don’t always work. Even when their documentation says they are supposed to work. This is not InstallShield’s fault, but rather the third party’s.
Just so you know, I always launch third party installations in InstallScript similar to this.
Using LaunchApplication with Third Party Installations
In the above screenshot, you see how I typically set up a call to LaunchApplication. This is a simplified example, so all I have for the command line is the /s option. Generally, there would be more options than this.
I like using SdShowMsg to display a message to the user during the silent install. If you don’t do that, you just have a progress dialog sitting there with nothing going on, which may cause the user to think the installation has hung.
Notice at the end if there is an error, I get the actual error code returned. If you just test for values that are ISERR_SUCCESS (meaning success) or < ISERR_SUCCESS (meaning failure), you are only seeing whether the call to LaunchApplication was successful or not. Not the actual error returned by the third-party installation or whatever it is that your running.
If the silent install doesn’t work, then you can play with the options you are using, which may help. But in the end, you are sometimes at the mercy of the third-party installation developer. And whether or not they did a good job implementing the silent install.
I suggest removing InstallShield from the equation and run the silent installation from an administrator command prompt to see if it works there. In the projects I was working on, it didn’t change anything.
If you can find no way around your problem, then you have to decide what band-aid is the best alternative for the end-user. And maybe the best solution is not to band aid at all.
Talk it over with your company or client and determine the best solution.