Command-line Arguments of SES Software

SES Software installation uses Windows Installer. This means that the entire installation process is compliant with the Windows Installer Setup and MSI command-line arguments.

To administer the installation silently, the Windows Installer command-line arguments for Setup.exe can be used along with the standard /v switch for the MSI command-line arguments. Its command line takes the following general format:

"_distro_\Setup.exe" /clone_wait /w /s /v"/qn" /v"INSTALLDIR=\"%programfiles%\SES Software\_distro_version_\\"" ... /v"_property_n_=_value_n_"

NOTES: The INSTALLDIR property is mandatory in the command line and the trailing backslash is required.

The command-line structure that is shown above uses the following specifiers that you will need to define:

  1. _distro_version_: This is the version number of the distribution that is being installed. For a given version, X.Y.Z, of SES Software X.Y, the distribution version is X.Y while the build version is Z. It is recommended to install the software in the default suggested location as mentioned for the INSTALLDIR property below.

  2. _distro_: This is the full path specifying the location where the distribution files exist. This path is also the location of the SETUP.EXE program, so the entire path specification of this program should be enclosed in double quotes as shown in the general format of the command structure above. The distribution files of a given version, X.Y.Z, of SES Software X.Y are extracted from the package, SESXY.EXE, to %public%\Documents\SES Software\_distro_version_\Setup.Z. For example, the package for software version 17.0.8018 would extract to the default location, C:\Users\Public\Documents\SES Software\17.0\Setup.8018.

  3. _property_n_: This is the name of the public property that you would like to use. The public properties comprise of standard MSI public properties as well as the custom public properties of SES Software; the custom properties are listed in the table below.

  4. _value_n_: This is the value of the corresponding public property that you would like to set. Please use one of the values that are suggested in the table below for the corresponding custom property.

The custom public properties that are listed in the table below correspond to each dialog setting that is used in the installation. By using their values, you can customize the installation based on your requirements. The examples below illustrate some common installation scenarios.

Example 1

The example command line below will install the software on a 64-bit Windows platform for a personal (standalone) license configuration.

"C:\Users\Public\Documents\SES Software\17.0\Setup.8018\Setup.exe" /clone_wait /w /s /v"/qn" /v"INSTALLDIR=\"%programfiles(x86)%\SES Software\17.0\\""

Since the installation is completely silent, the driver will not be installed automatically. Refer to the MSI public property, SESINSTALLHASPDRIVER, for the command structure required to start a subsequent silent installation of the driver.

Example 2

The example command line below will install the software on a 64-bit Windows platform for a network license configuration.

"C:\Users\Public\Documents\SES Software\17.0\Setup.8018\Setup.exe" /clone_wait /w /s /v"/qn" /v"INSTALLDIR=\"%programfiles(x86)%\SES Software\17.0\\"" /v"SESLICENSETYPE=CLIENTSERVER" /v"SESKEYTYPE=KEYTYPE_NETHASP"

MSI Custom Public Properties

These are custom public properties that are available to use in order to customize the MSI installation.

Use the following guide for the symbols used in the table below:

  1. †: the default value
  2. {}: the option as displayed in the dialog; or a comment

Dialog TitleProperty NameProperty Name
License TypeSESLICENSETYPE

STANDALONE† {Use Personal License}; CLIENTSERVER {Use Network License}

For CLIENTSERVER, the property, SESKEYTYPE, must also be set explicitly to KEYTYPE_NETHASP when executing a silent installation.

SES Software Protection DongleSESKEYTYPEKEYTYPE_HASP† {HASP}; KEYTYPE_NETHASP {Use Network License}; KEYTYPE_SCRIBE {SCRIBE} is no longer supported by the installer (internally, it will default to KEYTYPE_HASP)
SESINSTALLHASPDRIVER

1† {INSTALL}; -1 {DO NOT INSTALL}

INSTALL is set when SESKEYTYPE=KEYTYPE_HASP and when the installed version is less than the one available in the distribution. Note that this property is ignored for silent installation; i.e., when installed silently, the driver installation cannot be invoked.

At the end of the installation of the software, the installer automatically starts the installation of the driver for the software protection dongle if SESINSTALLHASPDRIVER is set to "1".

The installer for the HASP USB-port driver (HASPUserSetup.exe) exists in the distribution folder, Tools\HASP\Install. You may choose to turn off the automatic installation of the HASP driver by setting SESINSTALLHASPDRIVER to "-1" and script your own silent installation of the driver using the following command-line arguments:

"_distro_\Tools\HASP\Install\HASPUserSetup.exe" /s /v"/qn"

NOTE: the two properties that are mentioned above are only applicable for an installation to 'Install Professional Version' (i.e., SESDEMOVERSION=-1)
Installation SchemeSESIOSCHEMEPERMACHINE† {For everyone}; SESSOFTWARE {In the classic way}
Upgradable Version FoundSESUPGMIGRATESETTINGS

1† {I want to have ... migrated from the upgradable version ...}; -1 {UNSELECTED}

If you have the current distribution of SES Software already installed but it is older than the version that is being installed, and you would like the installer to migrate the settings from the older version to the newly installed environment, then set the value of this property to "1". However, if you would like the installer to skip the migration of the settings of the older version, then you should specify "-1" for this property.

If the installer does not detect an older version of current distribution of SES Software, then this property will be ignored.

NOTE: migrating settings from an older version of the current distribution of SES Software and migrating settings from a legacy version (refer to SESMIGRATESETTINGS below) are mutually exclusive. In other words, if you choose to migrate the settings from an older version of the current distribution of SES Software, then you must explicitly set the value of SESMIGRATESETTINGS to "-1"

Legacy Version FoundSESUNINSTLEGACY

1 {I want to have ... legacy version ... removed ...}; -1† {UNSELECTED}

If a legacy version of SES Software (e.g., v13, v12, etc.) is already installed and you would like to have the legacy version automatically removed by the installer of current distribution of SES Software, then you should specify "1" for this property. If you want the legacy version to remain alongside the current distribution of SES Software, then you should specify "-1" for this property.

If the installer does not detect a legacy version, then this property will be ignored.

This property is not supported for a silent installation of the current distribution of SES Software since the legacy version is uninstalled during the UI sequence of the installation. You may script a silent uninstall of the legacy version after the current distribution of SES Software has been installed by following the steps below:

  1. Open the Windows registry
  2. Browse to the registry key, HKEY_LOCAL_MACHINE\SOFTWARE\Safe Engineering Services\SES Software\_distro_version_
  3. Extract the second field (delimited by the '|' character) of the value of SESDETECT member which is the product code of the legacy version (e.g., SES Software 2009 (13.4.28)|2A043E44-CAEE-429B-9B88-8A9054E8DD24|C:\Program Files\SESSoftware 2009|||)
  4. Use the detected product code in the command line below to execute a silent uninstall of the legacy version

%systemroot%\system32\msiexec.exe /x {_product_code_} /qn

SESDELLEGACYSETTINGS

1† {I also want the legacy settings to be removed}; -1† {UNSELECTED} -- the default value is the value of SESUNINSTLEGACY

If a legacy version of SES Software (e.g., v13, v12, etc.) is already installed and you have set "1" for the SESUNINSTLEGACY property, then you will want to delete the settings of the legacy version that are in the Windows registry; in this case, you should explicitly specify "1" for this property. On the other hand, if the value of SESUNINSTLEGACY is set to "-1", then you should specify "-1" for this property.

If the installer does not detect a legacy version, then this property will be ignored.

SESMIGRATESETTINGS

1† {I want to have the user settings and databases migrated ...}; -1† {UNSELECTED} -- the default value is the opposite value of SESUPGMIGRATESETTINGS

If a legacy version of SES Software (e.g., v13, v12, etc.) is already installed and you would like the installer to migrate the settings from the legacy version to the newly installed environment, then you should explicitly specify "1" for this property. However, if you would like the installer to skip the migration of the settings of the legacy version, then you should specify "-1" for this property.

If the installer does not detect a legacy version, then this property will be ignored.

NOTE: migrating settings from a legacy version and migrating settings from an older version of the current distribution of SES Software (refer to SESUPGMIGRATESETTINGS above) are mutually exclusive. In other words, if you choose to migrate the settings from a legacy version, then you must explicitly set the value of SESUPGMIGRATESETTINGS to "-1"

MSI Public Properties

These are standard public properties that are available to use in order to customize the MSI installation.

Dialog TitleProperty NameProperty Name
Program FeaturesADDLOCAL_X86† {Special Engineering Programs > 32-bit} -- the default value on a 32-bit platform; on a 64-bit platform it is UNSELECTED
_X64† {Special Engineering Programs > 64-bit} -- the default value on a 64-bit platform; on a 32-bit platform it is UNAVAILABLE
_86_QUAD {Quadruple precision > 32-bit} -- UNSELECTED on a 32-bit/64-bit platform
_64_QUAD {Quadruple precision > 64-bit} -- UNSELECTED on a 64-bit platform; on a 32-bit platform it is UNAVAILABLE

NOTE: be careful to use only the feature that is designed for the platform indicated; using a feature that is UNAVAILABLE for a platform will not install that feature

Destination FolderINSTALLDIR

It is strongly recommended to use one of the following values of the installation directory, depending on the platform on which the software is being installed (please refer to the notes below for information on the format):

  1. x86: "C:\Program Files\SES Software\_distro_version_\"
  2. x64: "C:\Program Files (x86)\SES Software\_distro_version_\"

NOTE 1: this property must be explicitly defined at the command-line and full path must be double-quoted. When passing double quotes in the command line, they must be escaped using the escape sequence, \"; refer to the command-line structure above

NOTE 2: the specifier, _distro_version_, must be substituted with the version number of the distribution that is being installed (e.g., 17.0)

NOTE 3: A trailing backslash must be added to the path value of INSTALLDIR as shown above