Why does IA always want to reinstall SQL2005....

Got a problem you cannot solve? Try here.
Steve
Posts: 118
Joined: Fri Jun 16, 2006 9:51 pm
Location: Canada eh

Why does IA always want to reinstall SQL2005....

Postby Steve » Tue Jan 16, 2007 7:20 pm

Hello all;
Can anyone tell me why InstallAware always goes through the process of re-installing SQL Express even when it already exists on the workstation?

None of the other prerequesites in my installations (.NET, MSI, etc) behave this way.

I don't understand this behaviour because I only change files that are unrealated to SQL prior from one build to the next.

How can I prevent this behavior?

Thanks
Steve

MichaelNesmith
Posts: 3452
Joined: Thu Dec 22, 2005 7:17 pm
Contact:

Postby MichaelNesmith » Tue Jan 16, 2007 9:06 pm

Make sure you are checking for the correct instance. Click the Options button with the SQL runtime selected.
Michael Nesmith
InstallAware
Home of The Next Generation MSI Installer
Get your free copy today - http://www.installaware.com/

Steve
Posts: 118
Joined: Fri Jun 16, 2006 9:51 pm
Location: Canada eh

Postby Steve » Tue Jan 23, 2007 12:11 pm

Problem:
InstallAware does not seem to correctly identify an existing instance of SQL2005 when an instance name other that the default 'SQLEXPRESS' has been used. As a result the MSI attempts to reinstall the default SQL Express instance when running setup again or performing an update.

Cause:
Since the MSI is looking for the default instance name instead of your modified instance name, MSI believes that SQLExpress has not been installed. This occurs because the correct name of the SQL Instance has not been updated in InstallAware's ‘CheckSQL2005’ script.
(Note that although InstallAware permits you to specify a change to the SQL instance name within the SQLExpress Application Runtime, it does not however propagate that name change over to the area of the MSI script responsible for specifying the instance name that is checked during reinstalls or patches. You must manually make this change yourself.)

Resolution and Detailed Explanation:
If you are changing the instance name being used by an SQLExpress installation to something other than the default instance name of ‘SQLEXPRESS’, then you must change the ‘CheckSQL2005’ script (located in the tabs along the top of MSIView screen) to correctly reflect the non default instance name that you have chosen to use. In this example instead of the using the default name of ‘SQLEXPRESS’ we are instead going to use ‘MYAPPSQLEXPRESS’.
In order to make this change, do the following:

Edit the first line of the CheckSQL2005 script so that it is checking for the correct service name. For example, the line containing the default Instance name that automatically created by InstallAware would read:

Code: Select all

Check Service State for MSSQL$SQLEXPRESS (write result into variable SQL2005)


The updated line (which reflects a customised instance name of ‘MYAPPSQLEXPRESS’) should instead therefore be:

Code: Select all

Check Service State for MSSQL$MYAPPSQLEXPRESS (write result into variable SQL2005)



Hope this explanation might serve to help others encountering this issue.
Steve

P.S. Many, many thanks to InstallAware guru Jimo for his tireless efforts in helping me to see the ‘IA’ light.
Last edited by Steve on Tue Jan 23, 2007 5:38 pm, edited 2 times in total.

MichaelNesmith
Posts: 3452
Joined: Thu Dec 22, 2005 7:17 pm
Contact:

Postby MichaelNesmith » Tue Jan 23, 2007 4:01 pm

Steve wrote:Cause:
The correct name of the SQL Instance has not been updated in the ‘CheckSQL2005’ script.
(Note that although InstallAware permits you to specify a change to the SQL instance name within the SQLExpress Application Runtime, it does not however propogate that name change over to the area of the MSI script responsible for specifying the instance name to be checked for during reinstalls or patches. You must manually make this change yourself.)


Did you try clicking the Options button for the Application Runtime, or double-click the runtime listing for SQL Express, after it has been checked? The first dialog it brings up is the Check Service dialog, which exactly lets you do the item above.
Michael Nesmith

InstallAware

Home of The Next Generation MSI Installer

Get your free copy today - http://www.installaware.com/

Steve
Posts: 118
Joined: Fri Jun 16, 2006 9:51 pm
Location: Canada eh

Postby Steve » Tue Jan 23, 2007 5:27 pm

Hi Michael;

Yes, I did launch the 'Options' for SQL Express because that is where you must specify the Instance name if it is to be other than the default 'SQLEXPRESS'. (This was tested and repeated on numerous test projects all with the same result)
Using 'Options' successfully propagates the modified instance name out to the correct locations in the script except for in the first line of the CheckSQL2005 script.
So, if you use any instance name other than the default you will experience this problem of re-installing SQL Express when it already exists on the workstation.

MichaelNesmith
Posts: 3452
Joined: Thu Dec 22, 2005 7:17 pm
Contact:

Postby MichaelNesmith » Tue Jan 23, 2007 8:39 pm

I just tried that here and got this line in the actual script:

Code: Select all

Check Service State for MSSQL$test (write result into variable SQL2005)


More steps on how to reproduce this problem?
Michael Nesmith

InstallAware

Home of The Next Generation MSI Installer

Get your free copy today - http://www.installaware.com/

jimo
Posts: 342
Joined: Fri Aug 19, 2005 10:59 am
Location: Atlanta, GA
Contact:

Postby jimo » Wed Jan 24, 2007 8:33 am

Steve modify the checksql include script to check for your instancename and save it as another file, then include that file and not the original checksql2005 script in your project.
Jim Oswell
Software Engineering Manager, Dental
Greenway Health, LLC
http://greenwaymedical.com

Steve
Posts: 118
Joined: Fri Jun 16, 2006 9:51 pm
Location: Canada eh

Postby Steve » Wed Jan 24, 2007 2:12 pm

Hi Jim, thanks for the reply.
Everything is working perfectly since you showed me the trick about renaming the original checksql2005 script.

I just thought I should document your wisdom so that others would benefit from it as well.

Thanks again,
Steve

Michael, I will replicate the steps involved and send them to you.


Return to “Technical Support”

Who is online

Users browsing this forum: No registered users and 223 guests