Thoughts about setup and deployment issues, WiX, XNA, the .NET Framework and Visual Studio
All postings are provided AS IS with no warranties, and confer no rights. Additionally, views expressed herein are my own and not those of my employer, Microsoft.
.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:
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:"setupverifier.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:
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.
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:
For example, the following command line will allow you to specify non-default names for both log files:
netfx_setupverifier.exe /q:a /c:"setupverifier.exe /l %temp%\my_main_log.txt /e %temp%\my_error_log.txt"
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
[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:
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:
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.