What to do if other .NET Framework setup troubleshooting steps do not help

March 7, 2008 update - I have written a replacement version of these instructions. Please refer to http://blogs.msdn.com/astebner/archive/2008/03/07/8108332.aspx instead of using the steps listed below.

I have heard from many customers who have run into various types of installation problems while trying to install the .NET Framework 1.0 or 1.1 or .NET Framework hotfixes and service packs. Some of my other blogs posts have described various workarounds, and I am working on an article that consolidates these workarounds. However, there are some problems that aren't able to be resolved with the other workarounds I have posted.

Nearly every time when I run into a scenario where my other posts do not help, I try to use the following steps to get the machine back into a known state and then install things back one by one:

  1. Download the .NET Framework cleanup tool and choose to cleanup the version of the .NET Framework that is causing problems on your system
  2. Download and install the version of the .NET Framework that you cleaned up in step 1 (such as the .NET Framework 1.0, .NET Framework 1.1 or .NET Framework 2.0)
  3. (optional) Download and run the .NET Framework verification tool to double-check that all .NET Framework files are correctly installed
  4. Download and install the desired .NET Framework service pack (such as .NET Framework 1.0 SP3 or .NET Framework 1.1 SP1) by running the setup package directly instead of using Windows Update. Running it directly will allow the service pack setup to display error dialogs instead of having Windows Update suppress them

Running these steps should ideally put your machine back into a known good state with the .NET Framework plus a service pack installed. From there, it will usually work to install applications that require the .NET Framework (such as Visual Studio) or to install additional .NET Framework hotfixes (such as the security updates listed here).

<update date="3/7/2008"> I have written a replacement version of these instructions. Please refer to http://blogs.msdn.com/astebner/archive/2008/03/07/8108332.aspx instead of using the steps listed above. </update>