Aaron Stebner's WebLog

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

.NET Framework Setup Verification Tool User's Guide

.NET Framework Setup Verification Tool User's Guide

Rate This

.NET Framework Setup Verification Tool User's Guide

Introduction

This .NET Framework setup verification tool is designed to automatically perform a set of steps to verify the installation state of one or more versions of the .NET Framework on a computer.  It will verify the presence of files, directories, registry keys and values for the .NET Framework.  It will also verify that simple applications that use the .NET Framework can be run correctly.

If the verification tool finds any issues, there is a .NET Framework Repair Tool that can be found at the following locations:

Additional support can be obtained by visiting the .NET Framework setup forum at http://social.msdn.microsoft.com/Forums/en-US/netfxsetup/threads.

Download location

The .NET Framework setup verification tool is available for download at the following locations:

The .zip file that contains the tool also contains a file named history.txt that lists when the most recent version of the tool was published and what changes have been made to the tool over time.

Supported products

The .NET Framework setup verification tool supports verifying the following products:

  • .NET Framework 1.0
  • .NET Framework 1.1
  • .NET Framework 1.1 SP1
  • .NET Framework 2.0
  • .NET Framework 2.0 SP1
  • .NET Framework 2.0 SP2
  • .NET Framework 3.0
  • .NET Framework 3.0 SP1
  • .NET Framework 3.0 SP2
  • .NET Framework 3.5
  • .NET Framework 3.5 SP1
  • .NET Framework 4 Client
  • .NET Framework 4 Full
  • .NET Framework 4.5
  • .NET Framework 4.5.1
  • .NET Framework 4.5.2

By default, the .NET Framework setup verification tool will only list versions of the .NET Framework that it detects are installed on the computer that it is being run on.  As a result, the tool will not list all of the above versions of the .NET Framework.  This product filtering can be overridden by running the .NET Framework setup verification tool with the following command line switch:

netfx_setupverifier.exe /q:a /c:"setupverifier2.exe /a"

Silent mode

The .NET Framework setup verification tool does not support running in silent mode.

Exit codes

The verification tool can returns the following exit codes:

  • 0 - verification completed successfully for the specified product
  • 1 - the required file setupverifier.ini was not found in the same path as setupverifier.exe
  • 2 - a product name was passed in that cannot be verified because it does not support installing on the OS that the tool is running on
  • 3 - a product name was passed in that does not exist in setupverifier.ini
  • 100 - verification failed for the specified product
  • 1602 - verification was canceled

Log files

This verification tool creates 2 log files by default that can be used to determine what actions the tool is taking and what errors it encounters while verifying a product.  The 2 log files are listed below, and they are created in the %temp% directory by default.  Note that you can find the %temp% directory by clicking on the Windows start menu, choosing Run, typing %temp% and clicking OK to open the directory in Windows Explorer.

  • %temp%\setupverifier_main_*.txt - this log contains information about all actions taken during a verification tool session; it will include information about each resource that the tool attempts to verify for a chosen product and whether or not that resource was found on the system; this log tends to be fairly long, so errors will be logged with the prefix ****ERROR**** to make it easy to search and find them
  • %temp%\setupverifier_errors_*.txt - this log only contains information about any errors found during verification of a chosen product
  • %temp%\setupverifier_netfx20testapp_*.txt - this log contains error information for the .NET Framework test application that is run by the verification tool.  This log will only be created if there is an error while running the test application.

A new pair of log files will be created each time the verification tool is launched.  The date and time the tool is launched will be appended to the end of the log file names by default in place of the * in the names listed above.  If you want to control the exact names used for the log files, you can use the following command line parameters:

  • /l <filename> - specifies a name to replace the default value of setupverifier_main_*.txt for the main activity log for the verification tool
  • /e <filename> - specifies a name to replace the default value of setupverifier_errors_*.txt for the error log for the verification tool

For example, the following command line will allow you to specify non-default names for both log files:

netfx_setupverifier.exe /q:a /c:"setupverifier2.exe /l %temp%\my_main_log.txt /e %temp%\my_error_log.txt"

 

Attachment: netfx_setupverifier_new.zip
  • Details about the .NET Framework 2.0 setup packaging Available command line switches for .NET Framework

  • Right after the .NET Framework 3.5 SP1 shipped, I updated the .NET Framework cleanup tool and the .NET

  • While helping out a customer a few weeks ago, we discovered that the .NET Framework cleanup tool and

  • Over the weekend, I posted an updated version of the .NET Framework setup verification tool that contains

  • Last time I mentioned Aaron Stebner's sample programs for testing the registry for framework installations.

  • A while back, I posted a set of instructions that can be used to try to resolve .NET Framework installation

  • PingBack from http://maggew.wordpress.com/2009/06/17/dotnetfx_cleanup_tool-utility/

  • I am receiving these error messages.  When I run the update for 3.5.  It fails everytime.  Any ideas?

    01/12/10,22:11:49] ****ERROR**** Key: HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP\v2.0.50727

    Value: SP

    Expected Data: 2

    Actual Data: 1

    [01/12/10,22:11:49] ****ERROR**** Key: HKLM\SOFTWARE\Microsoft\NET Framework Setup\NDP\v3.0

    Value: SP

    Expected Data: 2

    Actual Data: 1

    [01/12/10,22:11:50] ****ERROR**** Verification failed for product .NET Framework 3.5 SP1

  • Hi Tebiii - The .NET Framework 3.5 SP1 also installs the .NET Framework 2.0 SP2 and 3.0 SP2 behind the scenes.  Those registry values should be set to SP 2 instead of 1 after installing 3.5 SP1, so that is why the verification tool is reporting these errors.

    Are you also seeing errors while trying to install the .NET Framework 3.5 SP1, or does it successfully install but then the verification tool fails?  If it is only the verification tool, then you can either try to repair the .NET Framework 2.0 SP2 and 3.0 SP2 or just manually change those 2 registry values.

  • I am running Windows 7 x64 and i cannot run various MMC snap-ins, nor can I install or uninstall Paint.Net.  This appears to be the result of installing Office 2007 Enterprise, which concurs with many other users on various forums.  I have already tried a complete format and re-installation of Windows and once again Office 2007 has broken .Net.

     I run the setup verifier tool and the only errors are:

    [05/31/10,13:06:37] File C:\Windows\Microsoft.NET\Framework64\v2.0.50727\ASP.NETWebAdminFiles\App_LocalResources\error.aspx.resx (no version info) is installed on the system

    [05/31/10,13:06:37] File C:\Windows\Microsoft.NET\Framework64\v2.0.50727\ASP.NETWebAdminFiles\AppConfig\App_LocalResources\DefineErrorPage.aspx.resx (no version info) is installed on the system

    [05/31/10,13:06:38] File C:\Windows\Microsoft.NET\Framework64\v2.0.50727\ASP.NETWebAdminFiles\AppConfig\DefineErrorPage.aspx (no version info) is installed on the system

    [05/31/10,13:06:38] File C:\Windows\Microsoft.NET\Framework64\v2.0.50727\ASP.NETWebAdminFiles\error.aspx (no version info) is installed on the system

    or from the error log:

    [05/31/10,13:37:36] Process 'Netfx20TestApplication.exe' exited with return code -1073741819

    [05/31/10,13:37:36] Verification failed for product .NET Framework 3.5 SP1

    [05/31/10,13:38:04] Process 'Netfx20TestApplication.exe' exited with return code -1073741819

    [05/31/10,13:38:04] Verification failed for product .NET Framework 3.0 SP2

    [05/31/10,13:38:57] Process 'Netfx20TestApplication.exe' exited with return code -1073741819

    [05/31/10,13:38:57] Verification failed for product .NET Framework 2.0 SP2

    The missing files do not seem significant (all error files which I presume are only generated when error occur), and the error log is completely unhelpful.  So no what do I do????  I have run SFC and unsurprising it found no errors "Windows Resource Protection did not find any integrity violations."

    It seems to me this is yet another complete f**k up on M$'s part: This is yet another critical component of the OS that as M$ assume nothing will go wrong as they never make mistakes, they offer no documentation/support/information regarding the repair of .Net Framework.  Over the last 10 years of being an IT professional and now being responsible for 14,000 computers I have on many occasions found problems with Windows application which are so tied into the OS that when things go wrong it requires a reinstall of the OS - MS Installer components, Internet Explorer, WMI to name but a few.

    If Microsoft are to write code which is so un-resilient that their own programs break the OS, then they owe it to paying customers to fix the problems.  Unless their priority changes from being purely profit drive, then their dreadful reputation is FULLY deserved.

  • Hi Mike - I'm very sorry for the hassles that this issue is causing for you.  It sounds like nothing related to the .NET Framework is working correctly on your computer - MMC uses the .NET Framework and so does Paint.NET, plus the small test application that is a part of my verification tool is crashing.  I agree that those missing files are not the cause of this problem.  Unfortunately, running SFC only attempts to repair files that are a part of the .NET Framework - it will not repair any registry keys, services, or permissions on files/folders/registry.  Any of those issues could cause the .NET Framework to not function correctly.

    I'd suggest trying to remove and re-add the .NET Framework 3.5.1 by doing the following:

    1.  Go to the Programs and Features control panel and click the link on the left side named "Turn Windows features on or off"

    2.  Uncheck the item named Microsoft .NET Framework 3.5.1 and click OK to remove it

    3.  Repeat step 1 to go back to the Windows Features control panel

    4.  Recheck the item named Microsoft .NET Framework 3.5.1 and click OK to add it back

    If the above doesn't help, then I'd suggest double-checking to make sure you have the .NET Framework 2.0 registry keys listed in the blog post at blogs.msdn.com/.../3260076.aspx.

    If neither of the above help, then you will probably need to repair Windows 7 in order to fully restore the .NET Framework functionality on your system.

  • Thanks for your quick reply astebner

    I have already tried removing and reinstalling .Net Framework 3.5.1 by turning the Windows features on and off, no difference (it didn't prompt for a reboot so I assume it does not require one).  Combined with the fact that EventViewer uses .Net 2.0 I don't think it would change things anyway - I thing this is .Net 2.0 which is broken if that's any help in a diagnosis?

    One thing I notice from the link you sent, is that these two keys are the other way around on my machine, I assume the page is at fault not my PC as i have changed both to reflect the instructions which made no difference.  Also, these keys were not mentioned as erroneous in the verbatim log from the above tool.

    Care to comment - how can I be certain that the information contained in this link is correct? blogs.msdn.com/.../3260076.aspx

    Instructions:

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework]

    InstallRoot = C:\Windows\Microsoft.NET\Framework64\

    [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework]

    InstallRoot = C:\Windows\Microsoft.NET\Framework\

    My machine:

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework]

    InstallRoot = C:\Windows\Microsoft.NET\Framework\

    [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework]

    InstallRoot = C:\Windows\Microsoft.NET\Framework64\

  • Hi Mike - The keys listed in my blog post are correct (I confirmed in the installer and on my 64-bit OS).  They should look like this:

    [HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework]

    InstallRoot = C:\Windows\Microsoft.NET\Framework64\

    [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework]

    InstallRoot = C:\Windows\Microsoft.NET\Framework\

    I don't know why they would be reversed on your system, but if they are, can you please try to set them to match what I have listed above to see if that helps?

    If that doesn't help, then you will likely need to repair your OS to solve this issue.

  • Hi there. I downloaded the tool on 28 June, 2010 and used it today. Thank you.

    My OS: Windows XP Pro SP3

    Your tool version that I used: According to "history.txt" in the tool, the current build was created on May 24, 2010

    I would like to point out three typos.

    #1. Both in the "readme.txt" that comes with your tool and in this web page you say the following:

    The .NET Framework setup verification tool supports removing the following products:

    You mean "verifying", right? Not "removing".

    #2. Both in the "readme.txt" that comes with your tool and in this web page you say the following:

    The cleanup tool can returns the following exit codes:

       * 0 - cleanup completed successfully for the specified product

    You mean "verification", right? Not "cleanup".

    #3. Both in the "readme.txt" that comes with your tool and in this web page you mention that the log files are created here:

    %temp%\setupverifier_main_*.txt

    %temp%\setupverifier_errors_*.txt

    %temp%\setupverifier_netfx20testapp_*.txt

    In Windows XP Pro SP3, the log file was created in

    C:\Documents and Settings\<userid>\Local Settings\Temp

    and not in

    C:\WINDOWS\Temp

    I mean that in Windows XP, the log file is created in the %tmp% directory, and not the %temp% directory.

    Thank you.

  • I'm getting the following errors on a Windows Server 2008 R2 system when verifying either the .NET Framework 4 Client or Full options:

    [06/29/10,13:35:16] ****ERROR**** File C:\Windows\system32\evr.dll is not installed on the system

    [06/29/10,13:35:16] ****ERROR**** File C:\Windows\SysWow64\evr.dll is not installed on the system

    [06/29/10,13:35:18] ****ERROR**** Verification failed for product .NET Framework 4 Full

    I believe that EVR.DLL will only be present on an R2 system when the "Desktop Experience" feature is installed, so this is an incorrect error on my systems.  It appears that other than that the verification is successful.

Page 1 of 23 (338 items) 12345»
Leave a Comment
  • Please add 8 and 2 and type the answer here:
  • Post