Tuesday, May 9, 2017

Installshield IsCmdBld - ISDEV : fatal error -6199: Internal build error

So I've been using the InstallShield command line build utility with Jenkins successfully for many years now but hit a weird error today.

Historically I've used InstallScript MSI projects but decided to use the Basic MSI for my latest project as they seem to handle silent installs better (No answer file needed).  I created the project and configured Jenkins with a tried and trusted "Execute Windows batch" build step with a command similar to:

IsCmdBld.exe -p "%workspace%\MyInstaller.ism" -r "Default" -c COMP -a "Main" 

Only to be confronted with the generic error:
 
ISDEV : fatal error -6199: Internal build error


After some fruitless Google searches and some choice words I discovered that if the InstallShield project file was set to XML instead of the default "Binary" the error mysteriously went away. 

Hope that saves someone some time.

FYI:  Another tip I learned was to only allow one Jenkins executor to run on my installer build system.  If more than one ISCmdBld runs concurrently random errors occurred due to InstallShield fighting itself over shared files.