Upgrade from SQL 2005 to SQL 2008 might fail with MsiGetProductInfo error



Consider a scenario where an upgrade from SQL 2005 to SQL 2008 fails with the following messages while installing Setup Support Files.


 


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


TITLE: SQL Server Setup failure.


——————————


SQL Server Setup has encountered the following error:


MsiGetProductInfo failed to retrieve ProductVersion for package with Product Code =


{0826F9E4-787E-481D-83E0-BC6A57B056D5}‘. Error code: 1605..


 


——————————-


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


From Detail_ComponentUpdate.txt –


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


2009-03-16 22:00:59 Slp: Inner exceptions are being indented


2009-03-16 22:00:59 Slp:


2009-03-16 22:00:59 Slp: Exception type: System.InvalidOperationException


2009-03-16 22:00:59 Slp: Message:


2009-03-16 22:00:59 Slp: MsiGetProductInfo failed to retrieve ProductVersion for package with Product Code = ‘{0826F9E4-787E-481D-83E0-BC6A57B056D5}‘. Error code: 1608.


2009-03-16 22:00:59 Slp: Stack:


2009-03-16 22:00:59 Slp: at Microsoft.SqlServer.Configuration.MsiExtension.SetFeatureInstallStateAction.FillInstallPropertyByProductCode(PackageInstallProperty pkg, String prodCode)


2009-03-16 22:00:59 Slp: at Microsoft.SqlServer.Configuration.MsiExtension.SetFeatureInstallStateAction.FillInstallProperty(PackageInstallProperty pkg)


2009-03-16 22:00:59 Slp: at Microsoft.SqlServer.Configuration.MsiExtension.SetFeatureInstallStateAction.ExecuteAction(String actionId)


2009-03-16 22:00:59 Slp: at Microsoft.SqlServer.Chainer.Infrastructure.Action.Execute(String actionId, TextWriter errorStream)


2009-03-16 22:00:59 Slp: at Microsoft.SqlServer.Setup.Chainer.Workflow.ActionInvocation.InvokeAction(WorkflowObject metabase, TextWriter statusStream)


2009-03-16 22:00:59 Slp: at Microsoft.SqlServer.Setup.Chainer.Workflow.PendingActions.InvokeActions(WorkflowObject metaDb, TextWriter loggingStream)
********************************************************


 


 


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.


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.


 


Note: If your Product Code is different, you would like to see Search hints to find the appropriate GUID .


 


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.


 


 


Dibakar Dharchoudhury


SE, Microsoft SQL Server,


 


Reviewed By,


Rakesh Singh,


TL, Microsoft SQL Server

Comments (36)

  1. Martin says:

    This solution worked for me! Thanks!

  2. Harry Farkas says:

    I had to go through the entire registry, not just the HKEY_CLASSES_ROOT but it ultimately worked for me.  Thanks!

  3. Ivaylo says:

    Solved the problem for me. Many thanks!

  4. AndyG @DBA_ANDY says:

    Worked for me as well, installing a new SQL 2008 R2 instance onto a cluster that already had two SQL 2008 instances on it – thanks!

  5. Casey says:

    THANK YOU!!!

  6. Set up SQL Server 2008 Enterprise get error code says:

    ——————————

    TITLE: SQL Server Setup failure.

    ——————————

    SQL Server Setup has encountered the following error:

    MsiGetProductInfo failed to retrieve ProductVersion for package with Product Code = '{BA4DA261-CB60-4690-B202-44998DFC6986}'. Error code: 1605..

    ——————————

    BUTTONS:

    OK

    ——————————

    How I solve this. I try to do your guide but not work to me. Thanks so much!

  7. da Yoop says:

    Still a good fix in 2011…  Thanks

  8. Faizal says:

    How i can solve the following error MsiGetProductInfo failed to retrieve ProductVersion for package with Product Code = '{D441BD04-E548-4F8E-97A4-1B66135BAAA8}'. Error code: 1605..

  9. Satinder Thakur says:

    Thank You! Solution worked for me to install SQL 2k8 r2.

  10. xuanlenl says:

    My code from error message is 72DE3C67-FB48-450E-8BEA-4EB1B3B5355D but  I can not find it in registry. So, how I can do? My OS is XP pro and work in domain. Please help me.

  11. Hank Freeman says:

    Rakesh, I have seen this post all over the web, however, I do it and nothing seems to work. I am getting the following Error.

    MsiGetProductInfo failed to retrieve ProductVersion

    for package with Product Code = '{C942A025-A840-4BF2-8987-849C0DD44574}'. Error code: 1605.

    Every attempt to follow these instructions comes up with no resolution and the same error.

    It would be really nice to know how to fix this problem once and for all.

    Hank Freeman

    hfreeman@msn.com

  12. 50703015@stu.hcmut.edu.vn says:

    Hi Rakesh,

    I installed SQL server successfully. Then, I uninstalled it because I forget password and reinstalled it.

    The error was released like your case. And, I found product code in

    <HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindowsCurrentVersionInstallerFolders>

    and try to reverse like your way but it doesn't word.

    If you have some ideas to help me solve this issue, please send to my email leanhvu1989@yahoo.com

    Thank in advance.

  13. pouya says:

    hi i removed sql server 2008r2 and i want reinstall sql server 2008r2 and confront

    error:

    " SQL Server Setup has encountered the following error:

    MiGetProductInfo failed to retrieve ProductVersion for package Code ='{72DE3C67-FB48-450E-8BEA-4EB1B3B5355D}' Error Code = 1608.. "

  14. Mohan Kumar D N says:

    Hi Dibakar,

    This solution worked like a wonder. I had encountered this error due to improper uninstallation of SQL server 2008.

    You are right about repeating 3 times…

    Thanks a lot. Saved me hell lot of time.

    Regards,

    Mohan

  15. Rey says:

    yes ! great !

    sometimes need to repeat the search 4 or 5 times…

  16. ALIN says:

    This solution worked for me! Thanks!

  17. pjmm says:

    Your Solution has worked for me. In my case was SQL W2008 R2 x64 and took me eight different Keys in tens of registry locations. Took me a while but it was worth the time spent.

    Thanks!.

  18. Dibakar Dharchoudhury says:

    I have personally encountered this error atleast 15 times in my career and all the times this solution has worked like wonder. SQL 2008 was released a few months earlier to the blog post (2009), but still today (in 2012) this seem to work!!

    One small clarification, the product code that your error is throwing needs to be byte reversed first, before you search through your registry. In my case, I had shown how to byte reverse only the 1st part of the code, but for best results you need to byte reverse the entire product code before you search in the registry. Also, the process may need to be repeated multiple times (not exactly 3) to workaround the issue, and this depends on the specific box where you are doing this. Inproper uninstalls,upgrades and installs may lead to this issue.

    I no longer work with Microsoft now, hence couldn't answer your queries in time, my apologies. One of my colleagues happened to visit my blog post today, it was then I was delighted to see so many comments and appreciations and thought of updating the post.

    Cheers!

  19. Mitesh Mahajan says:

    Works Great!!! I had to repeat it three times! Thanks! :)

  20. Bradley says:

    Thank you! I do think that Microsoft need to improve the Uninstall process to totally remove SQL Server 2008 rather than force users through this process. And this error was one of several that I encountered.

  21. Brian says:

    Worked for me!

  22. Tekk1 says:

    how do i byte reverse…:( idk how to do that

    SQL Server Setup has encountered the following error:

    MsiGetProductInfo failed to retrieve ProductVersion for package with Product Code = '{6D10FB2C-82A9-40F2-91D0-7BE64CF0DAF2}'. Error code: 1605..

  23. Rob says:

    OCT 2012 and the fix still works.  Why does Windoze leave all this trash in the registry?

  24. blakhani says:

    @Tekk1

    6D10FB2C => C2BF01D6

  25. Leopold says:

    Trying to install SQL SERVER 2008 DEVELOPER EDITION INTO MY Windows 8 Pro

    SQL Server Setup has encountered the following error:

    MsiGetProductInfo failed to retrieve ProductVersion for package with Product Code = '{F3494AB6-6900-41C6-AF57-823626827ED8}'. Error code: 1605..

  26. ceejay says:

    tried to install sql 2012 on vista, but it's not supported, then had problems uninstalling.. among others MsiGetProductInfo

    deleted the key under HKEY_CLASSES_ROOTInstallerUpgradeCodes as you instructed and setup finished normally

    10q very much

  27. Bobby says:

    Thank you very much……

  28. thuchv says:

    Thank you very much! You've saved my time!

  29. Aladdin Elhalaq says:

    This a perfect work around it worked for me thank you

  30. Nitya says:

    This did help, I had to go through these steps just one time

    Thanks.

  31. Henry T says:

    Excellent tip  – Has gotten me out of a tight spot – Thanks

  32. CGPeters61 says:

    OK this is going to take a little while, I installed 2012 express built my data base, shut it down for the night, got up next morning going to work on my database could not connect to server. I unistall server and reboot computer and reinstall server again this time it get almost to the end and hangs up for like 25 or 30 minutes.Finally it finishes, I get everything successful report. I try to open server and get the same error as before,—————————

    Microsoft SQL Server Management Studio

    —————————

    Could not load file or assembly 'WindowsBase, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.

    —————————

    OK  

    —————————Can somePlease help me understand how to fix this issue?this makes 3 days trying to fdigure it5 out, after restore and removing all the files, and rebooting and reinstalling still doing the same thing same error.

  33. CGPeters61 says:

    —————————

    Microsoft SQL Server Management Studio

    —————————

    Could not load file or assembly 'WindowsBase, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35' or one of its dependencies. The system cannot find the file specified.

    —————————

    OK  

    —————————

    the install is still running and this popped up this is for 2012 expressnow it is giving me invalid license error

  34. Yuriy says:

    Thank you. This helped install SQL Server 2008 perfectly.

  35. ali says:

    thank you so much

  36. Dinesh Vishe says:

    Good