Aaron Stebner's WebLog

Thoughts about setup and deployment issues, WiX, XNA, the .NET Framework and Visual Studio

Strange .NET Framework 2.0 SP1, 3.0 SP1 and 3.5 installation error caused by orphaned registry value

Strange .NET Framework 2.0 SP1, 3.0 SP1 and 3.5 installation error caused by orphaned registry value

Rate This
  • Comments 7

Recently, I heard from a customer who could not get the .NET Framework 2.0 SP1 to install correctly on their system, and I wanted to explain the issue and how we were eventually able to resolve it in case anyone else runs into a similar issue in the future.

Description of the issue

The customer was able to successfully install the .NET Framework 1.1 and the original version of the .NET Framework 2.0.  However, when they launched the .NET Framework 2.0 SP1 installer, it allowed them to accept the license agreement, and then briefly showed the progress page before transitioning to a blank error page that looks like the following:

This error dialog is obviously not very helpful, and to complicate matters, there are not any errors reported in the .NET Framework 2.0 SP1 log files that are created in this scenario.  I had the customer use these steps to gather a list of installed products, and it did not list the .NET Framework 2.0 SP1, and the information in the application event log seemed to indicate that setup had not even attempted to install the 2.0 SP1 MSI.

Root cause of this issue for the .NET Framework 2.0 SP1

Eventually I discovered that there was an orphaned registry value on the system that was causing .NET Framework 2.0 SP1 setup to get confused and think that the product was already installed, even though the MSI was not actually installed on the system.  Once I discovered this issue, I was able to reproduce it on my test machine.  This is the exact registry value that causes this issue during .NET Framework 2.0 SP1 setup:

On x86 systems:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727]
Version

On x64 and ia64 systems:

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\NET Framework Setup\NDP\v2.0.50727]
Version

How to resolve this issue for the .NET Framework 2.0 SP1

Here are the steps that can be used to resolve this issue if you encounter it during .NET Framework 2.0 SP1 setup:

  1. Click on the Start menu, choose Run, type cmd and click OK
  2. Run this command:  reg delete "HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727" /v Version /f
  3. Run this command:  reg delete "HKLM\SOFTWARE\Wow6432Node\Microsoft\NET Framework Setup\NDP\v2.0.50727" /v Version /f
  4. Try again to download and install the .NET Framework 2.0 SP1 from here for x86, from here for x64 or from here for ia64

Root cause of this issue for the .NET Framework 3.0 SP1

While investigating this issue, I found that a similar issue can affect the installer for the .NET Framework 3.0 SP1.  A similar dialog to the one shown above will appear when attempting to run .NET Framework 3.0 SP1 setup, and like in the case of the .NET Framework 2.0 SP1, no errors are reported in the .NET Framework 3.0 SP1 setup log files.  This is the exact registry value that causes this issue during .NET Framework 3.0 SP1 setup:

On x86 systems:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0]
Version

On x64 and ia64 systems:

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\NET Framework Setup\NDP\v3.0]
Version

How to resolve this issue for the .NET Framework 3.0 SP1

Here are the steps that can be used to resolve this issue if you encounter it during .NET Framework 3.0 SP1 setup:

  1. Click on the Start menu, choose Run, type cmd and click OK
  2. Run this command:  reg delete "HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0" /v Version /f
  3. Run this command:  reg delete "HKLM\SOFTWARE\Wow6432Node\Microsoft\NET Framework Setup\NDP\v3.0" /v Version /f
  4. Try again to download and install the .NET Framework 3.0 SP1 from this location

Root cause of this issue for the .NET Framework 3.5

The above issue can also affect the installer for the .NET Framework 3.5 because it uses the same setup engine as the .NET Framework 2.0 SP1 and 3.0 SP1.  A similar dialog to the one shown above will appear when attempting to run .NET Framework 3.5 setup, and like in the cases above, no errors are reported in the .NET Framework 3.5 setup log files.  This is the exact registry value that causes this issue during .NET Framework 3.5 setup:

On x86 systems:

[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5]
Version

On x64 and ia64 systems:

[HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\NET Framework Setup\NDP\v3.5]
Version

How to resolve this issue for the .NET Framework 3.5

Here are the steps that can be used to resolve this issue if you encounter it during .NET Framework 3.5 setup:

  1. Click on the Start menu, choose Run, type cmd and click OK
  2. Run this command:  reg delete "HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.5" /v Version /f
  3. Run this command:  reg delete "HKLM\SOFTWARE\Wow6432Node\Microsoft\NET Framework Setup\NDP\v3.5" /v Version /f
  4. Try again to download and install the .NET Framework 3.5 from this location

Another note about .NET Framework 3.5 setup

The above issues affects the standalone setup packages for the .NET Framework 2.0 SP1, the .NET Framework 3.0 SP1 and the .NET Framework 3.5.  However, since the 2.0 SP1 and 3.0 SP1 packages are also installed as prerequisites by .NET Framework 3.5 setup, that means this issue can also cause a different type of failure during .NET Framework 3.5 setup than the one described above.

The orphaned registry value issue is specific to the MSI-based versions of the .NET Framework 2.0 SP1 and 3.0 SP1, so it is only possible to see the problem below during .NET Framework 3.5 setup on Windows XP and Windows Server 2003 since those are the only OS's that you can install the MSI-based versions of the .NET Framework 2.0 SP1 and 3.0 SP1 on (as described here).

If the orphaned registry key is from .NET Framework 2.0 SP1 or 3.0 SP1 setup (as opposed to from 3.5 setup), then the behavior of .NET Framework 3.5 setup is a bit different than the behavior for the standalone .NET Framework 2.0 SP1 and 3.0 SP1 setups described above.  During .NET Framework 3.5 setup, an orphaned .NET Framework 2.0 SP1 or 3.0 SP1 registry value will cause an error dialog like the following will appear:

This is a generic error page that appears for all .NET Framework 3.5 installation failures.  In this orphaned registry value scenario, the error log that appears when clicking the link in this dialog displays misleading information about the cause of the failure.  If the system has the .NET Framework 2.0 SP1 registry value orphaned, the .NET Framework 3.5 setup error log will indicate that the .NET Framework 3.0 SP1 is failing.  If the system has the .NET Framework 3.0 SP1 registry value orphaned, the .NET Framework 3.5 setup error log will indicate that the .NET Framework 3.5 is failing like in the following log snippet:

[06/19/08,11:11:11] Microsoft .NET Framework 3.5 'package': [2] Error: Installation failed for component Microsoft .NET Framework 3.5 'package'. MSI returned error code 1603
[06/19/08,11:11:30] WapUI: [2] DepCheck indicates Microsoft .NET Framework 3.5 'package' is not installed.

However, if you look in the main install log file for .NET Framework 3.5 setup (%temp%\dd_dotnetfx35install.txt), you will not see any attempt to install the .NET Framework 2.0 SP1 or 3.0 SP1.  If your system has one of the 2.0 SP1 or 3.0 SP1 registry values present but does not have the corresponding MSI installed, then the same workarounds described above can help resolve this .NET Framework 3.5 installation issue as well.

Final note

There are many possible causes for .NET Framework 2.0 SP1, .NET Framework 3.0 SP1 and .NET Framework 3.5 setup failures.  The scenario in this blog post only describes one possibility.  If you are encountering a .NET Framework installation failure but have different symptoms or different information in your log files, you are likely running into a different problem.  In those cases, I suggest consulting the .NET Framework setup troubleshooting guide for links to other possible installation issues and workarounds, links to log file locations, links to readme files, etc.

<update date="12/2/2009"> Fixed broken links to images used in this blog post. </update>

 

  • PingBack from http://thelowedown.wordpress.com/2008/09/13/vs-2008-does-not-launch/

  • Hi Aaron,

    I have recently installed vs2008 sp1 and fw 3.5 sp1.  After much messing about and searching after some compile errors in Dynamic Data, I have finally found your blog and related tools, thanks.

    After running 3.5 SP1 various times, the install goes through with no error messages, but it seems that it will not update (your validator tool says fw v2 sp2, fw v3 sp2 and fw v3.5 sp1 have failed, all prev versions ok) the underlying framework files.

    If I compare files for 3.0 and 2.0 with another persons 'OK' machine, they seem to be 6 months+ out of date.

    I was wondering whether the installer somehow thought all sps had been updated (no idea why) and was skipping but reporting success, similar to what could go on in this post, and we could delete/update some registry entries to bypass this somehow?

    I am using "Vista" Ultimate SP1 (which was upgraded from Home Premium down the line).

    Regards

    Example Errors

    [11/03/08,08:49:59] Section [Registry GE - .NET Framework 2.0 SP2 (Common)] - start parsing entries

    [11/03/08,08:49:59] ****ERROR**** Key: SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727

    Value: SP

    Expected Data: 2

    Actual Data: 1

    [11/03/08,08:49:59] Section [Registry GE - .NET Framework 2.0 SP2 (Common)] - stop parsing entries

    [11/03/08,08:50:56] ****ERROR**** Key: SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0

    Value: SP

    Expected Data: 2

    Actual Data: 1

    [11/03/08,08:50:56] Key: SOFTWARE\Microsoft\NET Framework

  • Hi Fedge - Vista SP1 comes with the .NET Framework 2.0 SP1 and 3.0 SP1, but .NET 3.5 SP1 should update those to 2.0 SP2 and 3.0 SP2.  It sounds like something may be causing 3.5 SP1 setup to already think it has those SP2 products and skip them.

    Here is the exact information that 3.5 SP1 setup looks for to decide whether or not to install 2.0 SP2 and 3.0 SP2.  Can you please check what versions you have on your system?

    For .NET Framework 2.0 SP2:

    %windir%\Microsoft.NET\Framework\v2.0.50727\mscorwks.dll version >= 2.0.50727.3053

    For .NET Framework 3.0 SP2:

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0\Setup]

    Version >= 3.0.30618.00

    You may want to try to remove the .NET Framework 3.5 SP1 and try to re-install it to see if that clears up this issue.  You can find steps for doing that at http://blogs.msdn.com/astebner/archive/2008/08/01/8803442.aspx.

  • PingBack from http://wickedw.wordpress.com/2008/12/02/visual-studio-2008-sp-and-net-framework-35-sp1-has-not-installed-but-says-it-has/

  • Great catchup Mate!!!

    I was digging into this for a full day and you just save another wasted date.

    It worked like a charm for .NET 2.0 SP1 and now I am going for .NET 3.0 SP1 as well. Later will get finally .NET 3.5 SP1 installed.

    Thanks for sharing your deep acknowledge on this matter.

    Keep up your great work.

    Regards

  • Hi Aaron Stebner,

    Yesterday I installed .net framework 3.5 sp1 in my computer after i look at my computer that i have no net framework installed . in the end it fails . when i look at my control panel , add/remove programs i have net framework 2.0 installed . i dont know why . i read some articles on how to fix net frame work 3.5 sp1 . none of them works . i have this problem

    [08/02/12,21:58:38] XPSEPSC Installer: [2] Component XPSEPSC Installer returned an unexpected value.

    [08/02/12,21:58:39] WapUI: [2] DepCheck indicates XPSEPSC Installer is not installed.

    [08/02/12,22:01:43] XPSEPSC Installer: [2] Component XPSEPSC Installer returned an unexpected value.

    [08/02/12,22:01:44] WapUI: [2] DepCheck indicates XPSEPSC Installer is not installed.

    i already have XPSEPSC INSTALLER and i install it . and it didnt work . i download log collection tools . please help me on this one .

    I just dont want to uninstall net framework 2.0 yet without me letting you know my real problem .

    where can i post my vslogs.cab ?

  • Hi Acquiel - Can you please use the tool described at blogs.msdn.com/.../6458047.aspx to collect all of your setup log files, upload the file named %temp%\vslogs.cab that this tool will create to a file server (such as http://skydrive.live.com), and then reply back here and provide a link that I can use to download your log files and take a closer look?

    Also, I noticed that you posted the same comment on several different blog posts. In the future, you only need to post a comment on one blog post, and I'll see it and respond to it.

Page 1 of 1 (7 items)
Leave a Comment
  • Please add 1 and 5 and type the answer here:
  • Post