cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
mdaybowls
Level 2

Specifying Product Version Number in ISCmdBld

I am trying to specify a new product version number when building my package. I am using the following Syntax:

ISCmdBld -y "1.00.0001"

However, when I'm not sure how this affects my build. Can you help me figure out how I can get to this new Product version number?

Thanks,
Mike
Labels (1)
0 Kudos
(6) Replies
mdaybowls
Level 2

Can anybody help me on this?
0 Kudos
chrisselnes
Level 4

My experience with this is that the -y doesn't actually change the ProductVersion property in the .ism file, it only overrides the property during a specific build. So say you build your setup without the commandline, the ProductVersion in the .ism is 1.00.0001 and your setup actually puts the ProductVersion in the registry, say HKLM\Software\Product Name in a value called version. In this instance the version of the ism and the version in the registry will be the same.

Now, you build the setup with the commandline and use -y "1.00.0021", the ProductVersion stays at 1.00.0001 but the version that gets put out in the registry is now 1.00.0021.

The only way I know to make these two the same is to access the build number of the ism through (in whatever language you use) the msi database functions and actually grabbing the ProductVersion, increasing it and then resetting it. I'm sure others have a better way to do this though.

I have never understood why there wasn't built in increment build technology already in place as it seems such a basic functionality. Maybe I am missing something also but that is my experience. Hope it helps.
0 Kudos
bobbyalicia
Level 2

The easiest way is to use VBScript to open the project, change the version and then save the porject. You can use a .bat file to pass in the version, then call the script and then call the command line builder.

Here is a sample script:

Dim oArgs

Dim Version
Dim Project

Set oArgs = WScript.Arguments
' Version i.e. 1.0.003
Version = oArgs(0)
' Path to the .ism file
Project = oArgs(1)

Set m_ISWiProject = CreateObject("IswiAuto14.ISWiProject")

' Build path to the .ism file
strFile = Project
m_ISWiProject.OpenProject strFile
m_ISWiProject.ProductVersion = Version
m_ISWiProject.SaveProject
m_ISWiProject.CloseProject
0 Kudos
Hareef
Level 2

mdaybowls wrote:
I am trying to specify a new product version number when building my package. I am using the following Syntax:

ISCmdBld -y "1.00.0001"

However, when I'm not sure how this affects my build. Can you help me figure out how I can get to this new Product version number?

Thanks,
Mike


Hi,

I am using macrovision installshield12.
i try to use the option [ISCmdBld -y "1.00.0001"], but it displays the error message as "Y is not recognized as a switch". Is it possible to change the version number in command line??

Thanks in advance,
Hareef
0 Kudos
DebbieL
Level 17

The -y parameter is new in InstallShield 2008. InstallShield 12 doesn't have support for changing the version number from the command line. For more information on the InstallShield 2008 features, see the release notes (http://support.installshield.com/kb/view.asp?articleid=Q112996) or the following help topic:
http://helpnet.macrovision.com/Robo/BIN/Robo.dll?tpc=/robo/projects/installshield14helplib/whats_newIS2008.htm

Debbie Landers
Macrovision Corporation
0 Kudos
mayuppe953
Level 3

Hello, I used iscmdbld with -y option to assign higher version number (-y "1.00.0010") than what actuallly says in my ism file (1.00.0000):

iscmdbld -p "c:\\MyApps.ism" -r "MyRelease" -b "c:\temp" -y "1.00.0010"

Running setup .exe that was built by this command still puts the registry key : "HKLM\SOFTWARE\MyApps\1.00.0000"

How does this key automatically updated? or where do I see the newer product version I used in the command line?
0 Kudos