cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
HWilkinson
Level 3

SQLRTGetConnectionInfo returns blank values after upgrade to Installshield 2010 SP1

I've recently upgraded an Installshield MSI Project from Installshield 2008 (app version 7.1) to Installshield 2010 SP1 (app version 7.2).
The installation retrieves previous SQL connection information using the SQLRTGetConnectionInfo & SQLRTGetConnectionAuthentication functions during minor upgrades so that the user doesn't get prompted to enter the SQL information.

When I do a minor upgrade of the 7.1 version of the application to 7.2 using the newly build Installshield 2010 setup, the SQLRTGetConnectionInfo incorrectly returns blank parameters with the function’s return code as ISERR_SUCCESS. The SQLRTGetConnectionAuthentication method also returns the incorrect value for the authentication type. This causes the upgrade to fail as the connection settings it tries to use hasn't been set correctly.

Does anybody know why the SQLRTGetConnectionInfo function would fail to retrieve connection information? I am using SQLRTInitialize2 in the OnBegin() event handler and SQLRTGetConnectionInfo & SQLRTGetConnectionAuthentication in the OnMaintUIBefore() event handler.

Thanks,
Henriet
Labels (1)
0 Kudos

(2) Replies
HWilkinson
Level 3

I’ve attached a sample Installshield 2008 MSI project to demonstrate the issue. The setup will create a SQL database called TEST with single table called USER. This was tested against a SQL Express 2005 SP3 database.

The Install Script contains the following methods:
1. OnBegin - calls SQLRTInitialize2()
2. OnFirstUIBefore
3. OnMaintUIBefore
4. OnResumeUIBefore
5. OnSQLLogin

IS_SQLSERVER* properties has been cleared.

If you install the application, then run a modify, the OnMaintUIBefore will correctly retrieve the previous SQL connection values from the registry using SQLRTGetConnectionInfo and SQLRTGetConnectionAuthentication. Minor upgrades also retrieve the SQL connection values from registry correctly.

Upgrade the project to InstallShield 2010 and do a minor upgrade. The SQL connection values are no longer retrieved from the registry but seems to be set to the default IS_SQLSERVER* property values.

Any help would be greatly appreciated.

Thanks,
Henriet
0 Kudos
HWilkinson
Level 3

I haven't been able to resolve this issue. Has anyone come across the same problem?

Thanks,
Henriet
0 Kudos