Building Installshield LE 2012 setups from the command line for CI

Thursday, 31 October 2013 12:07 Stefano Tommesani

In Visual Studio 2012, after installing Installshield LE 2012, you can include setup projects into your solution, as shown below:


Adding the Setup project to the solution, and including it into the Release configuration, makes for a quick, 1-click compilation procedure of both the main app and the installer. Still, what if we want to use a Continuous Integration software (e.g. Jenkins and countless others) and run the compilation of the setup from an external app? The ISL file extension used by InstallShield LE does not seem to be directly supported by CI softwares, and using ISCmdBld.exe as specified in Flexera's docs is not feasible, as that part of Installshield is missing from the LE edition (the L stands for Limited, so no surprises here). However, this specific project type can be compiled within VS IDE, so we can use MSBuild to compile it from the command line.


Let's start by defining a configuration for the solution that includes only the Setup project, using the SingleImage configuration:



When building the solution using this configuration, only the Setup project will be compiled.

Then let's open a command shell that supports the VS build environment (you can find in the Visual Studio Tools folder in the Start menu), and from the directory that contains the solution let's type the following command:

msbuild <name of solution.sln> /t:Rebuild /p:Configuration=SingleImage


In the ValidateProjects phase, MSBuild will report that all the other projects included into the solution are not enabled in the given configuration (SingleImage), then it will start compiling the InstallShield project. At the end of the process, after some warning messages highlighted in yellow that for now we are not considering, the output folder will contain the freshly built Setup file:


Last Updated on Thursday, 31 October 2013 12:45