How to Use InstallShield’s Silent Install Capabilities

Written by Alex Marin · October 24th, 2024 · 6min read

InstallShield is a popular software packaging creation and adjustment tool. As mentioned frequently in our blogs, one of the most crucial aspects of the software packaging industry in infrastructure management is the possibility of performing silent installations and uninstallations.

InstallShield allows automated software installations without any user interaction.

In this article, let’s have a look at the options available in InstallShield for executing silent installations.

ISS Files and Silent Install ParametersCopy link to this sectionLink to this section copied!

When it comes to silent installation, there are a few key considerations.

This article focuses on the EXE-based silent installations, as tools like InstallShield, Advanced Installer, and others also support creating MSI files.

In general, it is recommended to push MSI files into a managed infrastructure.

One of the main reasons why MSI is recommended is that it brings a more standardized approach to software installations.

NoteIf you are looking for the MSI silent installation parameters or other options, I recommend checking out this article.

For a short overview, whenever you want to install a fully silent MSI, you can use the following command lines:

Msiexec /i setup.msi /qn > To install an MSI
Msiexec /x setup.msi /qn > To uninstall an MSI

For EXE installers created with InstallShield, silent installation relies on ISS files. InstallShield uses ISS (InstallShield Silent) response files to automate the installation.

These files basically record the installation choices and can silently install applications using the “/s” parameter.

NoteBy default, the ISS file slips into the Windows directory (C:\Windows\setup.iss). But add /r /f1"path\to\custom.iss" and that's how you decide where the file gets saved.

To create an ISS file, we need to run the installer with /r:

Setup.exe /r

This will start the installation and will record any choices you make during the setup and output the ISS file. After that, you can run the installer with the ISS file like this:

setup.exe /s /f1"path\to\setup.iss"

The “/s” parameter runs the installer silently, while the “/f1” specifies the location of the ISS file to automate the installation.

InstallShield-generated EXE installers support silent installation using the command line switch “/s”. The common parameters include:

  • /s - Runs the installer silently using an ISS file
  • /r - Records and ISS file for future silent installations
  • /f1[path] - Specifies the location of the ISS file
  • /f2[path] - Defines the log file location

You can also create an ISS file manually using any standard text editor available. There are some rules that you need to follow:

  • The file must include a silent header section ([InstallShield Silent])
  • The file must include an application section ([Application])
  • The file must include a dialog sequence section ([Dialog Sequence])
  • The file must include a dialog data section

As a basic example of an ISS file, we can have a look at this ISS, which was done with Notepad:

[InstallShield Silent]
Version=v7.00
File=Response File
[Application]
Name=MySoftware
Version=1.0
Company=MyCompany
[Dialog Sequence]
Dlg0=Welcome-0
Dlg1=LicenseAgreement-1
Dlg2=DestinationFolder-2
Dlg3=SetupType-3
Dlg4=ReadyToInstall-4
[Welcome-0]
Result=1
[LicenseAgreement-1]
Result=1
[DestinationFolder-2]
Path=C:\Program Files\MySoftware
[SetupType-3]
Type=Typical
[ReadyToInstall-4]
Result=1

There are, of course, some limitations to the ISS as well:

  • ISS files only work with InstallShield-based installers
  • ISS files are quite hardcoded, meaning if the dialogs change between software versions, the ISS file will not work correctly
  • Custom dialogs may require additional scripting.

ISS Files and Silent Uninstall ParametersCopy link to this sectionLink to this section copied!

To silently uninstall an InstallShield-based application (EXE installers, not MSI packages), you can either use an ISS response file or try the standard silent parameters.

The easiest way to silently uninstall an InstallShield-based EXE app is to try the following silent parameters:

setup.exe /x /s /v"/qn"

The parameters represent the following:

  • /x - Uninstall
  • /s - Silent Mode
  • /v”/qn” - Passes /qn to the MSI inside the EXE (no ui) in case the EXE is a wrapper

If this doesn’t work, then it means we need to create an ISS file. This can be done via recording or manually. To do an ISS file via recording, we need to do the following:

setup.exe /r /x /f1"C:\path\to\uninstall.iss"

Go through the standard uninstall process, and InstallShield will record the ISS file. Once the ISS file is recorded and created, use the following command line:

setup.exe /s /x /f1"C:\path\to\uninstall.iss"

Silent Installation for Advanced Installer PackagesCopy link to this sectionLink to this section copied!

Advanced Installer offers you the possibility to import InstallShield Projects, but does not support ISS files. Instead, Advanced Installer provides its own list of supporting parameters:

/? and /help

Display the help dialog with the command-line options.

/exenoui

Launch the EXE setup without UI.

/exebasicui

Launch the EXE setup with basic UI.

<msiOptions>

Pass options to msiexec.exe in embedded MSI setups.

You can find the full list of Advanced Installer EXE parameters in the Advanced Installer User Guide.

TipIf you are considering migrating from InstallShield to Advanced Installer, check out our comparison of the two solutions here.

ConclusionCopy link to this sectionLink to this section copied!

InstallShield offers strong silent installation and uninstallation capabilities through ISS response files, allowing for automated software deployment without user interaction. The process involves recording installation choices with `/r`, executing silent installations with `/s /f1"path\to\setup.iss"`, and leveraging key parameters to control execution.

However, ISS files come with limitations: they are limited to InstallShield-based installers, are hardcoded to specific software versions, and may require additional scripting for custom dialogs. If silent uninstallation is required, users can attempt standard silent parameters or record an ISS file for a seamless process.

Ultimately, InstallShield provides a standardized and structured way to handle software installation silently, making it a valuable tool for infrastructure management and automation.

FAQs

What is the purpose of ISS files in InstallShield? Copy link to this questionLink to this question copied!

ISS (InstallShield Silent) files automate the installation process by recording installation choices and allowing for silent installations without user interaction. They are used with the `/s` parameter to execute silent installs efficiently.

How do I create an ISS file for silent installation?Copy link to this questionLink to this question copied!

To create an ISS file, run the installer with `/r`:

- `setup.exe /r`

This will record installation choices and generate an ISS file that can be used later for silent installations.

How can I silently uninstall an application installed with InstallShield? Copy link to this questionLink to this question copied!

You can try using this command:

- `setup.exe /x /s /v"/qn"`

If this doesn’t work, record an ISS file during uninstallation with:

- `setup.exe /r /x /f1"C:\path\to\uninstall.iss"`

Then use:

- `setup.exe /s /x /f1"C:\path\to\uninstall.iss"`

What are the limitations of ISS files?Copy link to this questionLink to this question copied!

ISS files only work with InstallShield-based installers, are hardcoded to specific software versions (which can cause compatibility issues), and may require additional scripting for custom dialogs.

How does Advanced Installer handle silent installations compared to InstallShield? Copy link to this questionLink to this question copied!

Advanced Installer does not support ISS files but provides various command-line parameters such as `/exenoui` (no UI) and `/exebasicui` (basic UI). It also allows passing options directly to MSI setups.

Written by
See author's page
Alex Marin

Application Packaging and SCCM Deployments specialist, solutions finder, Technical Writer at Advanced Installer.

Comments: