- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Re: Call setup.exe through commandline and set properties
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Subscribe
- Mute
- Printer Friendly Page
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
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.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
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
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
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
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
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?
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
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.
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
Can I use underscores for my public properties?
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
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"