Friday, April 8, 2011

A New Record!

Most irritating "fix" thus far. For my 396th failure installing SQL Server, this is the "error message" (being generous):

SQL Server Setup has encountered thefollowing error:

MsiGetProductlnfo failed to retrieve ProductVersion for package with Product Code = {36F70DEE-

1EBF-4707-AFA2-E035EEAEBAA1}’. Error code: 1605


Googling turns up very little, including this on MSDN:

SOLUTION (Worked at my end)

*********************************

Get the Product Code = '{0826F9E4-787E-481D-83E0-BC6A57B056D5}' from the error message that you are getting.

Byte reverse the first part from 0826F9E4 to 4E9F6280. [emphasis added]

Search in the registry under HKEY_CLASSES_ROOT\Installer\UpgradeCodes and try to find a match.

Take a backup of the registry and delete the parent key.

Re-run the Upgrade and if it fails again for a different GUID, then repeat the steps stated above.

In my case, I had to repeat these steps thrice as there were 3 other locations where I needed to change the product code. Then the setup was successful.


With this choice addendum:

Note: This post should not be treated as the Microsoft’s Recommendation or Resolution to the problem, it is only a workaround which worked in our environment and so we would like to share it.

Is that not a truly hideous incantation? Omidog. Naturally, anyone can "byte reverse" on the thumbs of one hand, right? Oh how casually we toss out these wonders of technical-ness.

Googling THAT turned up very little. I wrote code for 20 minutes, failed to reproduce the result above (0826F9E4 to 4E9F6280) and gave up, intending to fail again some other day.

1 comment:

  1. Yes, I have sub-normal intelligence; be thankful for your large brain.

    I got thrown by the byte part of the reversal. Actually it's just "reverse the order of the sequence of letters."

    0826F9E4 to 4E9F6280

    For is last becomes 4 is first, E is second to last becomes the second, ...

    It was really late. I was tired. I have sub-normal intelligence.

    ReplyDelete