View Full Version : Project migrated from IS7 - ReadStringProperty returns empty value

06-29-2007, 04:48 PM
I need help here. I have a one-click install project that I am moving from Installshield 7 to Installshield 2008. I have about everything working, but for some reason, the properties don't work. Specifically, this is an InstallScript project, with two string properties and one number property. I set the property using the ether object, but inside the ReadProperties handler, when ReadStringProperty is called for the strings, it is empty.

This was working just fine in Installshield 7 and now doesn't work, and I saw nothing in any of the migration documentation or elsewhere to indicate I should be doing anything different. Any idea what might be going on? Did something change I didn't consider?


07-04-2007, 11:19 AM
I have upgraded an InstallShield 12 InstallScript project to IS 2008 and am experiencing the same problem. Did you ever find a solution to this problem?


07-05-2007, 10:31 AM
No luck so far. It seems I'm not the only one. Can anyone familiar with this stuff drop me a hint?:eek:

If I can come up with a solution that seems general, I'll post something.


07-05-2007, 02:37 PM

In InstallShield 2008 and later OCI setups no longer run within the browser, (i.e.) the browser launches the setup just like any other external launcher. This is neccessary because on later platforms (Vista currently) it is not possible for an application running in the browser to have the appropriate privs that a setup needs to install files etc.

An implication of this change is that it is no longer possible for the setup and web page to communicate directly once the setup is launched, therefore setting/reading custom properties is no longer supported.

If you need to pass data to the setup pass the data on the command line of the setup using the 'is::CmdLine' property and read the information using the CMDLINE script variable.

This is currently missing from the migration notes but will be added soon.

Devin Ellingson
Software Developer
InstallShield, A Macrovision Company

03-17-2008, 01:22 PM

We recently migrated our InstallShield 12 projects to InstallShield 2008 and we are having problems with our OCI setups.

We modified our web pages so that we pass custom properties on the command line, since these are no longer supported, but we encountered a problem with the -l (language parameter) and -ig (installation unique identifier parameter). When we use the following instruction in the web page :

ether.SetProperty( "is::CmdLine", /l0x1009 /C0" ); //English

the /l is processed by the setup since when we display the value of CMDLINE in our installscript and we get "/C0". But when we run on a french OS, the setup runs in french instead of english and when we pass /l0x0c0c (French Canada) and run on a english OS it runs in english. It is as if the /l parameter is processed but ignored.

As for the /ig parameter, it is processed and ignored since the GUID that is found in HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall is the GUID that is assigned to the setup project. Is it still possible to override the GUID on the command line ?

If anyone has encountered this problem, any help would be appreciated.