This website uses cookies. By clicking Accept, you consent to the use of cookies. Click Here to learn more about how we use cookies.
Turn on suggestions
Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
- Revenera Community
- :
- InstallShield
- :
- InstallShield Forum
- :
- Re: Common Automation Interface for Installshield 12 and Installshield 2008
Subscribe
- 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
Jan 19, 2008
03:05 AM
Common Automation Interface for Installshield 12 and Installshield 2008
Hi,
I am writing a VB Script to open a .ism file, modify the version number, save the .ism file and close it. The following VB Script to do the same thing.
Set ISWiProject = createObject("IswiAuto14.ISWiProject")
ISWiProject.OpenProject wscript.arguments(0)
Set pProperty = ISWiProject.ISWiProperties.Item("ProductVersion")
pProperty.Value = "09.02.03"
ISWiProject.SaveProject
ISWiProject.CloseProject
I'm able to open Installshield 2008 ism file using this "IswiAuto14" object. But not able to open Installshield 12 ism file.
Can any one pls tell me any other common object to open Installshield 12 ism as well as installshield 2008 ism file.
Regards,
Selvam
I am writing a VB Script to open a .ism file, modify the version number, save the .ism file and close it. The following VB Script to do the same thing.
Set ISWiProject = createObject("IswiAuto14.ISWiProject")
ISWiProject.OpenProject wscript.arguments(0)
Set pProperty = ISWiProject.ISWiProperties.Item("ProductVersion")
pProperty.Value = "09.02.03"
ISWiProject.SaveProject
ISWiProject.CloseProject
I'm able to open Installshield 2008 ism file using this "IswiAuto14" object. But not able to open Installshield 12 ism file.
Can any one pls tell me any other common object to open Installshield 12 ism as well as installshield 2008 ism file.
Regards,
Selvam
(1) Reply
- Mark as New
- Subscribe
- Mute
- Permalink
- Report Inappropriate Content
Jan 20, 2008
08:53 PM
There is no common interface ( like foo.foo vs foo.foo.1 ) because the API is designed to have multiple build engines on the same machine.
Since VBScript is late binding, you could create a function that acts as a factory provider for the automation interface. Do a try catch and if 2008 ( 14 ) fails, then try to instantiate 12 and if that fails throw an exception. Otherwise take the object and return it to the caller and let him use it.
Btw, the progid is the same only change 14 to 12.
Since VBScript is late binding, you could create a function that acts as a factory provider for the automation interface. Do a try catch and if 2008 ( 14 ) fails, then try to instantiate 12 and if that fails throw an exception. Otherwise take the object and return it to the caller and let him use it.
Btw, the progid is the same only change 14 to 12.
![](/skins/images/8CE4FAD0DE6F3A6F9D0567434D2D2DAE/responsive_peak/images/icon_anonymous_message.png)