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
  • Hi,

    After installing .Net 4.0 all apps that target .Net 2.0 silently quit on launch without any error messages or log files. Using this tool, I seem to have the same problem as manish:

    ****ERROR**** Process 'Netfx20TestApplication.exe' exited with return code -1073741701

    This is the only error in my log files. Replying to manish, you said that the tool should create a log file named %temp%\setupverifier_netfx20testapp_*.txt with more detailed error information. However, it clearly doesn't create this file here on Windows XP. Was this useful functionality removed after that post of yours?

    My log files:

    skydrive.live.com/redir

    Please tell me if I can do something else to determine the cause of this issue.

  • Hi Vgur - There are some cases where the test application crashes before it is able to start creating a log file.  It looks like this is one of those cases.  I'd suggest trying to repair the .NET Framework 2.0 to see if that helps resolve this error.  If that doesn't help, then I'd suggest using the steps and the cleanup tool described at blogs.msdn.com/.../8108332.aspx to fully remove all versions of the .NET Framework and then re-install the .NET Framework 3.5 SP1 (which will also install the .NET Framework 2.0 SP2 and 3.0 SP2 behind the scenes) and the .NET Framework 4.

    Hopefully one of these options will help!

  • Thanks Aaron,

    I believe I had tried all these steps before I posted here. Repairing the .NET Framework 2.0 doesn't change the situation. Registry keys that relate to .NET Framework 2.0 seem normal. When I uninstall all versions of the .NET Framework (doesn't matter if I use the cleanup tool or not) and then install .NET Framework 3.5 SP1, my apps that target .NET 2.0 work again. Then, immediately after installation of the .NET Framework 4.0 (happens with both Client profile and full version), my apps stop working. I see nothing suspicious in .NET 4.0 Framework setup log files:

    skydrive.live.com/redir

    This behavior only occurs on one of my XP machines, two other XP PCs work well after installing the .NET Framework 4.0. I tried to analyze how Netfx20TestApplication.exe executes in API Monitor by Rohitab Batra and SysInternals Process Monitor, but it's very hard to understand what's going on by looking at these gigantic logs. At least, there are no permission problems when Netfx20TestApplication.exe tries to access Windows registry. Maybe you could give me some instructions what should I watch for when using tools like this (API loggers)?

  • Hi Vgur - I don't know how to explain the behavior you're seeing on this one computer.  The versions of the .NET Framework are designed to install and work side-by-side.

    The test application is a simple Windows Forms application that is designed to tell whether or not basic .NET Framework functionality works on a computer.  If it fails, then that usually means that all .NET Framework 2.0 applications will also fail in a similar way.  I don't have any experience looking at log entries in Process Monitor to determine why .NET Framework 2.0 applications are not working correctly.

    At this point, I'm not sure what to suggest.  I think it might be best to post a question on the .NET Framework setup forum to see if someone there can help provide additional ideas for you to try.  You can find that forum at social.msdn.microsoft.com/.../threads.  When you post there, please make sure to mention that you've already tried my cleanup tool because people there tend to suggest that as a first step.

  • Hi Aaron,

    Thanks for your suggestions. Looking deeper into the logs created by API Monitor, it was evident that some .NET startup function makes calls to the code in clrprofiler.dll, part of the (I admit, outdated) Intel Vtune Performance Analyzer 8.0. Someone on MSDN forums mentioned that the .NET framework automatically loaded the CLR profiler from VTune whenever it was in the PATH environment variable:

    social.msdn.microsoft.com/.../357c1dec-63f3-4369-9e22-36cfd3880f46

    There are no options in VTune 8.0 GUI to reverse this behavior.

    After I uninstalled Intel VTune 8.0, applications that target .NET 2.0 started working again. I'll see if I'll be able to reconcile the .NET Framework and Intel VTune 8.0 on this PC. I'm just posting it here in hope that it could help someone else.

  • After some more investigation I'm certain that there's indeed an incompatibility between the CLR profiler shipped with Intel VTune Performance Analyzer 8.0 (build 21288) and the .NET Framework 4.0 that can cause apps that target .NET 2.0 to quit with access violation. However, rather than uninstalling VTune 8.0 to overcome the problem, it's enough to set system environment variable COR_ENABLE_PROFILING to 0 to prevent the profiler from initializing:

    msdn.microsoft.com/.../bb384689.aspx

    Since the situation can potentially occur with other profilers, my suggestion is to print an additional warning in the log file created by the .NET Setup Verification Tool in case where 1) the test application crashes before it is able to start creating a log file; and 2) COR_ENABLE_PROFILING is set to 1.

  • Any help availabel for KB958147 and subsequent updates on xp

  • Hi Bigsi - KB958147 looks like a Windows Server 2003 patch that is unrelated to the .NET Framework - support.microsoft.com/.../958147.  If you're having trouble installing .NET Framework patches on Windows XP, then I'd first suggest trying to use the .NET Framework repair tool described at blogs.msdn.com/.../10359320.aspx.  If that doesn't help, then I'd suggest trying the steps and cleanup tool described at blogs.msdn.com/.../8108332.aspx to remove and re-install the .NET Framework, then try again to install .NET Framework patches.

  • [12/04/12,10:39:29] Detected operating system: Windows 7 (x86)

    [12/04/12,10:39:29] For more information about repairing the .NET Framework, see support.microsoft.com/.../2698555 and go.microsoft.com/fwlink

    [12/04/12,10:39:29] Install state for .NET Framework 1.0: not installed.

    [12/04/12,10:39:29] Install state for .NET Framework 1.1: not installed.

    [12/04/12,10:39:29] Install state for .NET Framework 2.0: installed with service pack 2.

    [12/04/12,10:39:29] Install state for .NET Framework 3.0: installed with service pack 2.

    [12/04/12,10:39:29] Install state for .NET Framework 3.5: installed with service pack 1.

    [12/04/12,10:39:29] Install state for .NET Framework 4 Client: installed with no service packs.

    [12/04/12,10:39:29] Install state for .NET Framework 4 Full: installed with no service packs.

    [12/04/12,10:39:29] Install state for .NET Framework 4.5: not installed.

    [12/04/12,10:39:29] Windows directory: C:\Windows

    [12/04/12,10:39:29] System directory: C:\Windows\system32

    [12/04/12,10:39:29] Program Files directory: C:\Program Files

    [12/04/12,10:39:29] Common Files directory: C:\Program Files\Common Files

    [12/04/12,10:39:29] Not adding product '.NET Framework 1.0' because it is not currently installed

    [12/04/12,10:39:29] Not adding product '.NET Framework 1.1' because it is not currently installed

    [12/04/12,10:39:29] Not adding product '.NET Framework 1.1 SP1' because it is not currently installed

    [12/04/12,10:39:29] Not adding product '.NET Framework 2.0' because it is not currently installed

    [12/04/12,10:39:29] Not adding product '.NET Framework 2.0 SP1' because it is not currently installed

    [12/04/12,10:39:29] Not adding product '.NET Framework 3.0' because it is not currently installed

    [12/04/12,10:39:29] Not adding product '.NET Framework 3.0 SP1' because it is not currently installed

    [12/04/12,10:39:29] Not adding product '.NET Framework 3.5' because it is not currently installed

    [12/04/12,10:39:29] Not adding product '.NET Framework 4.5' because it is not currently installed

    [12/04/12,10:39:36] Starting verification for product .NET Framework 4 Full

    "To run this application, you first must install one of the following versions of the .NET Framework:

    v.4.0.30319

    Contact your application publisher for instructions about obtaining the appropriate version of the .NET Framework." : I have this problem.

    What should i do?

  • Hi Steve - Are you seeing this error when you run the verification tool?  If so, it sounds like the test application that the verification tool attempts to run is not able to because some part of the .NET Framework 4 is not correctly installed.

    I’d suggest trying to run the .NET Framework repair tool from www.microsoft.com/.../details.aspx to see if that helps solve this problem.

    If that doesn’t help, then I’d suggest trying to manually remove and re-install the .NET Framework using the steps and tool described at blogs.msdn.com/.../8108332.aspx.

    Hopefully one of these options will help solve this problem for you.

  • when i install asp.net 2010 in windows7 that time error reporting is display so not install in my pc....

  • Hi Rani - I'm not familiar with a product named ASP.NET 2010.  Do you mean Visual Studio 2010?  What is the exact error message that you see when you try to install this product?

  • Nice post it is so very interesting i really like to read this .Thanks for sharing this .

  • The both of us really enjoyed your article. It appears like you've put a lot of effort into your article and the human race need much more of these on the Net these days. I do not real have a large deal to say in retort I just wanted to comment to tell well done. marvelous post. I never thought of that.

  • Here's a portion of one of the log files I get running the verification tool on Win7 x86:

    . . .

    [01/02/13,11:37:30] ExecutablePath = 'Netfx20TestApplication.exe'

    [01/02/13,11:37:30] FriendlyName = '.NET Framework 2.0 test application'

    [01/02/13,11:37:30] TimeoutSeconds = '300'

    [01/02/13,11:37:30] WaitOnExit = 'true'

    [01/02/13,11:37:30] Silent = 'true'

    [01/02/13,11:37:30] Launching process 'Netfx20TestApplication.exe' now

    [01/02/13,11:37:30] Process successfully launched. Waiting 300 seconds for it to complete.

    [01/02/13,11:37:33] ****ERROR**** Process 'Netfx20TestApplication.exe' exited with return code -1073741819

    [01/02/13,11:37:33] Section [Files - .NET Framework netfxperf.dll] - start parsing entries

    [01/02/13,11:37:33] File C:\Windows\system32\netfxperf.dll (version 4.0.40305.0) is installed on the system

    [01/02/13,11:37:33] Section [Files - .NET Framework netfxperf.dll] - stop parsing entries

    [01/02/13,11:37:33] ****ERROR**** Verification failed for product .NET Framework 3.0 SP2

    Can you explain why Netfx20TestApplication.exe is returning this error code? -1073741819 is the decimal representation of 0xC0000005 which is Access Violation. Is the error in Netfx20TestApplication.exe or somewhere else? Is this error a cause for concern?

Page 15 of 22 (330 items) «1314151617»
Leave a Comment
  • Please add 3 and 7 and type the answer here:
  • Post