Avian Waves : Blog
Topic: All
Search Blog
 
Recent Comments
Easy Way to Change Permissions on the Windows Server Scheduled Tasks Folder (C:\Windows\Tasks) (22)
4Fingus: Thank you so much. You have saved me alot of...

Mystery of the Missing msnmsn.inf on XP SP3 (24)
jo w: Thanx m8, it's even brilliant for those who are...

Delegating "Power Options" Management to Limited Users in XP (6)
Alessandro Stillitano: Hi :)I can report that on a Lenovo T410i the...

Mystery of the Server 2008 + IIS7 + OLE = "MDAC Not Installed" Error (1)
User1: Great analysis. I really appreciate the way you...
Last 15 Posts
Archives
Posted By Timothy • Topic: Tech
Aug 29, 2008 3:43 PM EDT
This was a tricky one!

I was attempting to install the client tools for SQL 2008 on my Vista SP1 workstation. Whenever I got to the "Setup Support Files" step, it would fail with the following error.

TITLE: SQL Server Setup failure.
------------------------------

SQL Server Setup has encountered the following error:

MsiGetProductInfo failed to retrieve ProductVersion for package with Product Code = '{AEB9948B-4FF2-47C9-990E-47014492A0FE}'. Error code: 1608..

First, I tried my old friend, ProcMon. No luck. There was no sign of any access to that GUID in the registry or file system. So I scoured the Google. I found a lot of people complaining about this error with beta versions of SQL 2008 and the only solution was a reformat and reinstall. That's just not acceptible to me.

So, I fired up RegEdit and looked for that GUID. It turns out that GUID belongs to MSXML6. I figured maybe I had a corrupt MSXML6 installation, so I downloaded the package from Microsoft and then attempted to remove the old one in Programs and Features. It definitely was corrupt because it would not uninstall. I had to download and fire up the Windows Installer Clean Up to get rid of it. It's a nice, but dangerous tool, so be careful when using it.

Well, the removal happened without incident and I tried to reinstall MSXML6 from the installer. No luck. It would immediately "succeed" without even attempting to install (I guess that's code for FAIL). It was apparently seeing something somewhere to indicate MSXML6 was already installed still. I wanted to forcefully overwrite it, but nothing I tried worked. I tried MSIEXEC flags for repair and uninstall -- no good!

The only solution at this stage was to look at the MSI itself. MSIs are just simple little databases. It is relatively easy to modify MSIs if the pre-existing installation detection logic is failing (as in this case). Note: THIS IS EXTREMELY UNSUPPORTED BY MICROSOFT, SO PROCEED AT YOUR OWN RISK FROM THIS POINT ON.

Using Orca, which is a handy little tool for editing MSIs (unfortunately, you have to download a very large SDK to get to this tiny tool), I was going to try to remove previous installation detection conditions and force the MSI to reinstall over whatever remnants of MSXML6 were left. I took the shotgun approach because I had no idea which line was causing it to fail (and I was beginning to get very frustrated).

In the InstallExecuteSequence table, I first sorted by the Sequence column ascending (makes it easier to see the order the operations occur). I then dropped the following rows: SkipInstallCA, LaunchConditions, FindRelatedProducts, CA_SetRefCountUpgradeFlag, CA_SetRefCountNewerFoundFlag, IsPendingRebootKey, CA_ErrorDifferentLang, and CA_ErrorPendingReboot.

I then went to the InstallUISequence table and sorted by the Sequence column again. I then dropped the following rows: SkipInstallCA, LaunchConditions, CA_SetRefCountUpgradeFlag, CA_SetRefCountNewerFoundFlag, IsPendingRebootKey, CA_ErrorNewerVersion, CA_ErrorDifferentLang, and CA_ErrorPendingReboot.

That dropped pretty much every potential version-related error condition possible in this MSI that I could see. I then saved the MSI and launched it. MSXML6 installed. Yes!

Okay, so now I thought I had a working MSXML6, but the true test would be if SQL 2008 would install.

So, I fired up the SQL Server 2008 installation and...

IT WORKED!

Mystery Solved.

How did I get a corrupted MSXML6? I have no idea... I wish I did.

Trackbacks :
Send trackbacks to this URL:
http://www.avianwaves.com/Blog/track.aspx?id=98
In your blog post, you must link back to my post using this URL:
http://www.avianwaves.com/Blog/default.aspx?id=98
Comments :
Just wanted to say thanks for this, it saved me lots of time!
Comment By Neil Kemp At 10/22/2008 1:44 PM EDT PermaLink
Your instructions on how to get the MSXML package to install were spot on. I followed your steps and the MSXML6 package installed.

I still ran in to the same error though when I tried to go back and install SQL 2008.

Still digging, but thanks for the info.
Comment By Patrick At 2/19/2009 8:58 AM EDT PermaLink
dude!!! 10000 times thank you!!! I followed your post and now SQL 2008 is on!!!!!!!! this is great!
Comment By yeeeeeeee At 3/18/2009 5:41 PM EDT PermaLink
you haven't mentioned which Msi was corrected. I see a bunch of them and not sure which one I should select. Probably this solution works for people who knows how to use Orca :(
Comment By SN At 5/14/2009 10:53 AM EDT PermaLink
For those who don't want the entire code package go to: http://www.technipages.com/download-orca-msi-editor.html for the orca installer!!!
Comment By Alex H At 6/7/2009 9:46 PM EDT PermaLink
Reinstalling MSXML did the trick!! Thanks for the tip!!!
Comment By Fedor At 6/10/2009 4:47 AM EDT PermaLink
Hey, man! Thanks for the idea but no msi editing is really necessary. Just install msxml6.msi from the temporary folder with extracted files and the problem's gone! In my case I found it in D:\69ab8b18030e9e75b7e5\x86\setup\x86.
Comment By Dr.DG At 9/2/2009 3:05 PM EDT PermaLink
Thanks very much! I hit this error trying to install SQL Server 2008 on a new Windows 7 machine and your instructions worked perfectly! Just a note that the Orca tool is called the "Windows SDK for Windows 7 and .NET Framework 3.5 SP1". After installing that, you must find the Orca.msi file, install it and then you can use it as you describe.

As you said, I have no idea why MSXML 6 was corrupted on my machine, as it was a new install of Windows 7.
Comment By Bob At 9/9/2009 1:51 PM EDT PermaLink
Just wanted to say thank you! I should also mention that simply reinstalling MSXML 6 didn't work. I needed to edit the MSXML6.msi that is contained in the SQL installer for it to do what it should.
Comment By Marcus At 11/5/2009 10:16 AM EDT PermaLink
Thank you very much! Just reinstalled MSXML and MS SQL 2008 installer is working
Comment By F@N At 11/23/2009 5:45 AM EDT PermaLink
Many, Many thanks to all - Dr G - your solution worked like a charm.
Comment By monkfiish At 4/21/2010 5:40 AM EDT PermaLink
I carnt thank you enough you saved my Job and my head.

THANKS
Comment By Andy At 4/21/2010 7:14 AM EDT PermaLink
I reinstall MSXML ,BUT It tell me that some upgradeing program is useing ,close these program "printer spooler"(process ID 1900)
Comment By tinyyi At 7/29/2010 2:14 AM EDT PermaLink
Add Comment :
Name :
Email :
URL (Optional) :
       
Comments :
Allowed BBCode Tags : LINK (URL), BOLD, ITALIC, UNDERLINE, QUOTE


By posting a comment to this blog, I agree to the blog rules.

This Avian Waves blog is powered by a modified version of Presstopia Blog




Avian Waves Logo