cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
gomochainstall
Level 6

Call setup.exe through commandline and set properties

Jump to solution

Hi everyone,

I was wondering if it is possible to call the setup.exe from the commandline and then set InstallShield properties through arguments? I'd like to automatically deploy my software and I need to set certain properties. 

Labels (1)
0 Kudos
(1) Solution
Dan_Galender
Level 10

Do you mean Windows Installer Properties?  If so, you can use the following command-line syntax:

     <path-to-Setup.exe>setup.exe /v"PROPERTY1=Val1 PROPERTY2=Val2 PROPERTY3=Val3"

[Keep in mind that the properties must be public properties and there must not be any spaces between the v parameter and the double quote.]

Example:

     setup.exe /v"FIRSTNAME=Fred LASTNAME=Flintstone"

Essentially, everything inside the "v" parameter is passed directly to the MSI engine and embedded double quotes within that string must be escaped with a preceding backslash.

If the value of a property contains any special characters, like a space, you will need to use a double-quoted string whose double-quotes will need to be "escaped" inside of the "v quoted string", as in

     setup.exe /v"NAME=\"Fred Flintstone\""

 

See Setup.exe Command-Line Parameters in the InstallShield Help

View solution in original post

(5) Replies
Dan_Galender
Level 10

Do you mean Windows Installer Properties?  If so, you can use the following command-line syntax:

     <path-to-Setup.exe>setup.exe /v"PROPERTY1=Val1 PROPERTY2=Val2 PROPERTY3=Val3"

[Keep in mind that the properties must be public properties and there must not be any spaces between the v parameter and the double quote.]

Example:

     setup.exe /v"FIRSTNAME=Fred LASTNAME=Flintstone"

Essentially, everything inside the "v" parameter is passed directly to the MSI engine and embedded double quotes within that string must be escaped with a preceding backslash.

If the value of a property contains any special characters, like a space, you will need to use a double-quoted string whose double-quotes will need to be "escaped" inside of the "v quoted string", as in

     setup.exe /v"NAME=\"Fred Flintstone\""

 

See Setup.exe Command-Line Parameters in the InstallShield Help

First of all, thank you for your answer, I think that solves my issue. Your solution is making me think of another question; When I create a property in the Property Manager is it by default public? Or do I need to set something?

0 Kudos

Properties are public or private based on their names. If the letters in the property’s name are all CAPITAL letters, then it is a public property. If there is at least one lowercase letter in its name, then it is a private property. 

Can I use underscores for my public properties?

0 Kudos

Windows Installer Property names can consist of (uppercase and lowercase) Letters, Numbers, Underscores, and Periods and must begin with a Letter or Underscore.  If all of the letters in the name are upper case, then the property is a public property.

All of this is described in the InstallShield Help Topic "Overview of Windows Installer Properties"