How to repair the .NET Framework 1.1 that ships as part of the OS on Windows Server 2003
The .NET Framework 1.1 ships as an OS component on the 32-bit Windows Server 2003 family of operating systems. This .NET Framework component is a hidden, always-installed component with the exception of ASP.NET (which can be found as a selectable item underneath the Application Server item in the Add/Remove Windows Components control panel applet).
I have seen cases where the .NET Framework 1.1 stops working correctly on Windows Server 2003 (often due to bugs in daily builds of the .NET Framework 2.0). In those cases, it is useful to perform a repair to get the .NET Framework 1.1 back to a known good state. However, it can be difficult to figure out how to repair .NET 1.1 in these scenarios because the component is hidden and because there is some specific logic in the setup DLL that installs this component that prevents uninstall and reinstall after OS setup has completed.
In general, you can repair the .NET Framework 1.1 that ships with Windows Server 2003 by re-running OS setup and choosing to repair/reinstall, which will trigger the .NET Framework 1.1 component setup to rerun.
In addition, the following steps can be performed in order to repair the .NET Framework 1.1 on Windows Server 2003 while also avoiding the need to run a full OS reinstall:
Delete the registry value netfx under HKLM\Software\Microsoft\Windows\CurrentVersion\Setup\OC Manager\Subcomponents
Create a file named netfx_repair.inf that contains the following text (or download it from here):
[Version]
Signature = "$Windows NT$"
DriverVer=10/01/2002,5.2.3790.0
[Components]
netfx=netfxocm.dll,UrtOcmProc,netfxocm.inf,,7Open a cmd prompt and run the following command: sysocmgr /i:<full path to netfx_repair.inf> .
This will bring up the Windows optional component installer wizard. Press next and installation/repair of the .NET Framework 1.1 component will begin. You will be asked for a path to install the files from if the location listed in the SourcePath value under HKLM\Software\Microsoft\Windows\CurrentVersion\Setup is not accessible or no longer contains the necessary OS source files. If this happens, you will need to point the wizard to the i386 directory of the OS source disk or a network share that contains the files. Keep in mind that if you have a version of Windows Server 2003 with a service pack integrated into it, you will need to use a source location that also includes the service pack.
After the wizard completes installation, you will have to manually rerun a modified command line to install assemblies to the GAC because the command line used by the .NET Framework 1.1 component only works correctly when OS installation is in progress. The command line is the following:
"%windir%\Microsoft.NET\Framework\v1.1.4322\gacutil.exe" /f /il %windir%\Microsoft.NET\Framework\v1.1.4322\assemblylist.txt
You should substitute %windir% with the actual Windows directory on your system.
<update date="11/1/2005"> There is a Knowledge Base article that also describes how to troubleshoot .NET Framework 1.1 installation issues on Windows Server 2003 that can be useful in this type of scenarios. You can find it at this location . </update>
<update date="9/29/2008"> Added a note about using source files with integrated service packs if the OS was originally installed with a service pack integrated. </update>
Comments
Anonymous
June 21, 2005
The comment has been removedAnonymous
June 21, 2005
Nektar,
take a chill pill
Read this and then come back all egg-faced:
http://www.forbes.com/technology/2005/05/26/cz_dl_0526linux.html?partner=rssAnonymous
June 23, 2005
Admittedly it can be hard to find, but there is some good info available about Windows setup, specifically around customization and unattend installs. I found this downloadable Windows Server 2003 Deployment Kit that looks pretty good on first glance - http://www.microsoft.com/downloads/details.aspx?familyid=aaf0a7a4-71c1-4ee9-b974-66214651a23b&displaylang=en.
Also, I realize you won't find any specific details like the repair procedure I describe above, and I concede the point about transparency on some level. If it is any consolation, that is exactly why I'm blogging about some of these topics.
Thank you for reading...Anonymous
July 12, 2005
Brilliant article.
It didn't solve my problem, but it has been stored in the grey matter for future use.Anonymous
July 13, 2005
Hi Andrew - thanks for the feedback. I'm sorry the post didn't solve your problem though. Could you describe your scenario in some more detail and I can try to help?Anonymous
August 11, 2005
Thank you so much for this info. I was having a problem where every time I opened a C# project in Visual Studio .NET 2003, I got the error message "Visual C# .NET compiler could not be created. Please re-install Visual Studio." By reinstalling the .NET Framework, I was able to get Visual Studio working without a full reinstall.Anonymous
September 01, 2005
A couple of months ago I posted some instructions about how to repair the OCM version of the .NET Framework...Anonymous
September 18, 2005
Excellent article!! I had upgraded a production web server to also be a backup domain controller and ASP.NET quit working instantly.
This article fixed the problem--good work!Anonymous
December 21, 2005
Hello,
It still does not correct the problem with Framework 1.1 on Windows 2003.
When I load a project in 1.1 says "Paramete not Valid" and also all the program using Framework 1.1 do not work correctly.
I used the procedure mentioned by MS to reinstall the .NET Framework, but it still gives the same error.Anonymous
January 03, 2006
Hi Mike - It sounds like the repair of the .NET Framework 1.1 might not have worked correctly. Could you try to run the steps listed in this blog post one more time and see if that helps? If not, could you try to run the .NET Framework verification tool located at http://astebner.sts.winisp.net/Tools/netfx_setupverifier.zip to verify the correctness of the .NET Framework 1.1 installation on your system? You can send me the log file that this tool produces if it reports a failure and I can try to take a look (aaronste@microsoft.com).Anonymous
June 02, 2006
Hi Guys,
I have installed windows 2003 server. It installed .net framework 2.0 automaticaly. I manually configured it to run ASP.NET applications. My ASP.NET applications are developed using version 1.1. It does not run successfully in v 2.0. I used web user control and access controls thru reference on aspx pages like webusercontrolid:txtUserName.text
Secondly, I uninstalled v 2.0 and tried to install v 1.1, it does not let me to do so. Please help how can i install v 1.1 on windows 2003 serverAnonymous
June 02, 2006
The comment has been removedAnonymous
July 05, 2006
Thanks heaps for this article, Followed steps 1-4 on a server that had file system corruption due to running out of disk space
:-O and it fixed .net 1.1 very handyAnonymous
August 15, 2006
Hi Aaron,
thanks for the excellent post.
I've followed your instructions but I still cannot see the ASP.Net extensions in the server mappings in IIS.
Are there any other suggestions?
I executed aspnet_regiis against individual applications as well as with the -i option.
I even upgraded to .Net 2.0. When I tried this, new extensions appeared (such as .compiled, .master etc) but still no sign of aspx, asmx etc!
Cheers,
JimAnonymous
August 15, 2006
The comment has been removedAnonymous
August 15, 2006
Hi Aaron,
I have to say I didn't expect that to work... but it did! I had tried that before, but not just after the steps above, and it worked!
Happy days!
Thanks,
JimAnonymous
August 23, 2006
Take a look at this... and it works!
http://blogs.msdn.com/astebner/archive/2005/06/21/431385.aspx...Anonymous
August 27, 2006
PingBack from http://blogs.msdn.com/astebner/articles/454956.aspxAnonymous
September 13, 2006
This might sound stupid, but what should be in the assemblylist.txt file. My understanding is that this is a list of assemblies to put into the Global Assembly Cache. What do you need in this file if you are just reinstalling the .Net Framework on Windows 2003.
Thanks,
MarkAnonymous
September 14, 2006
Hi Brutus - The file assemblylist.txt is installed as a part of Windows Server 2003 OS setup. You should not need to create or modify that file at all in order to repair using the instructions in this blog post. Are you seeing that file is missing on your system? If so, the file should contain the following items:
Microsoft.Vsa.Vb.CodeDOMProcessor.dll
Microsoft_VsaVb.dll
Microsoft.Vsa.dll
Microsoft.VisualBasic.Vsa.dll
cscompmgd.dll
Microsoft.JScript.dll
Microsoft.VisualBasic.dll
Microsoft.VisualC.dll
RegCode.dll
System.EnterpriseServices.dll
System.Security.dll
CustomMarshalers.dll
Accessibility.dll
System.Configuration.Install.dll
System.DirectoryServices.dll
System.Drawing.Design.dll
System.ServiceProcess.dll
System.Web.dll
System.Web.RegularExpressions.dll
System.Web.Services.dll
System.Windows.Forms.dll
System.Xml.dll
System.Data.dll
System.Design.dll
System.Drawing.dll
System.dll
System.Messaging.dll
IEExecRemote.dll
IEHost.dll
IIEHost.dll
ISymWrapper.dll
mscorcfg.dll
System.Data.OracleClient.dll
System.Management.dll
System.Runtime.Remoting.dll
System.Runtime.Serialization.Formatters.Soap.dll
System.Web.Mobile.dllAnonymous
September 28, 2006
For some reason when doing the re-install I get an error message of "RTE! Program: C:windowssystem32RunDll32.exe This application has requested the Runtime to terminate it in an unusual way."
The error appears right when the status is showing "Completing configuration of netfx". The bar is only 10% along. If I click OK on this error the program sits for a few minutes and then disappears. I'm not sure if it's actually re-installing correctly.
Has anyone seen this type of error? Tried repairing .Net 2.0 as well but that didn't work. When I run the cleanup tool only .Net 1.0 and 2.0 are listed... not 1.1.
This is on a Windows Server 2003 R2 system. Any help would be greatly appreciated.Anonymous
September 28, 2006
The comment has been removedAnonymous
October 04, 2006
Hi Aaron,Searching all over for a solution to my problem brought me to your blog. I see you've been very helpful to a lot of people.My problem is that my system crashed recently and I had to format and reinstall Win 2003. Apparently my CD has developed a few scratches and the file "dotnetfx.cab" in the i386 folder on the CD has become corrupt. Therefore the reinstall did not properly install .NET 1.1. Now, I'm trying to repair the framework.I tried to repair using the .NET 1.1 redistributable, but Win 2003 won't allow that. The redistributable too contains a netfx1.cab file, but its contents appear to be different in name and number from the file on the CD. I tried the method mentioned in your post above, but the repair searches for files within the dotnetfx.cab file, which are corrupted and so it fails.Are there any options for me ? I am wondering if I should try the Removal tool for .NET install failures, but it doesn't seem designed for this kind of problem. Thanks in advance for any help.Cerebrus.Anonymous
October 10, 2006
Hi Cerebrus - If you do not have another Windows Server 2003 CD to get a valid copy of dotnetfx.cab, you will need to find all of the files that were otherwise a part of dotnetfx.cab, and put all of them in a folder. Then you can browse to that folder you create when you run the steps listed above. You can find the files by downloading the .NET 1.1 redistributable and running the following: dotnetfx.exe /c:"msiexec /a netfx.msi TARGETDIR=c:temp" This will put the files into c:temp. There are a few files that are not included in the MSI-based setup but are in the Windows Server 2003 INF-based setup. You can probably just take those files from the existing Windows Server 2003 build that you have on your system, or from another Windows Server 2003 system. Hopefully this will help. Please contact me using http://blogs.msdn.com/astebner/contact.aspx if you have any trouble getting this to work. Also, please note that the cleanup tool will not work here because it does not allow you to remove the version of the .NET Framework that is installed as part of the OS.Anonymous
October 21, 2006
The comment has been removedAnonymous
August 04, 2009
Thank you for your tools. You have resuced me many times. Right now, I am having an issue with getting past an SCCM reporting install pre-req. It states that .NET Framework 1.1 is not installed on the Server 2003 R2 SP2 SQL 2005 SP3 server. I ran the cleanup tool for all versions of .net and did the re-install for .net 1.1 and I still get the following errors when I run the verifier for 1.1 - [08/04/09,10:24:53] ERROR File C:WINDOWSMicrosoft.NETFrameworksbs_diasymreader.dll is not installed on the system [08/04/09,10:24:53] ERROR File C:WINDOWSMicrosoft.NETFrameworksbs_iehost.dll is not installed on the system [08/04/09,10:24:53] ERROR File C:WINDOWSMicrosoft.NETFrameworksbs_microsoft.jscript.dll is not installed on the system [08/04/09,10:24:53] ERROR File C:WINDOWSMicrosoft.NETFrameworksbs_microsoft.vsa.vb.codedomprocessor.dll is not installed on the system [08/04/09,10:24:53] ERROR File C:WINDOWSMicrosoft.NETFrameworksbs_mscordbi.dll is not installed on the system [08/04/09,10:24:53] ERROR File C:WINDOWSMicrosoft.NETFrameworksbs_mscorrc.dll is not installed on the system [08/04/09,10:24:53] ERROR File C:WINDOWSMicrosoft.NETFrameworksbs_mscorsec.dll is not installed on the system [08/04/09,10:24:53] ERROR File C:WINDOWSMicrosoft.NETFrameworksbs_system.configuration.install.dll is not installed on the system [08/04/09,10:24:53] ERROR File C:WINDOWSMicrosoft.NETFrameworksbs_system.data.dll is not installed on the system [08/04/09,10:24:53] ERROR File C:WINDOWSMicrosoft.NETFrameworksbs_system.enterpriseservices.dll is not installed on the system [08/04/09,10:24:53] ERROR File C:WINDOWSMicrosoft.NETFrameworksbs_VsaVb7rt.dll is not installed on the system [08/04/09,10:24:53] ERROR File C:WINDOWSMicrosoft.NETFrameworksbs_wminet_utils.dll is not installed on the system any ideas are apprciated. thanks! BuddyAnonymous
August 12, 2009
Hi Hmkjr - I'm sorry for the hassles that this issue is causing for you. The steps I typically suggest for this type of error are listed at http://blogs.msdn.com/astebner/archive/2008/03/07/8108332.aspx. Could you please try to use those steps to remove all versions of the .NET Framework from your system, then re-install the .NET Framework 1.1 and see if that helps? Before running .NET Framework 1.1 setup, please use the steps listed at http://blogs.msdn.com/astebner/archive/2005/03/29/help-me-help-you-if-you-have-setup-bugs.aspx to enable verbose logging so that if things still do not work, you will have a verbose log from the installatin process. If things end up not working again, please zip and post this verbose log to a file server (such as http://skydrive.live.com), then reply back here with a link to the log file so I can download it and take a look to see if I can figure out what is going on with this scenario on your system.Anonymous
March 06, 2010
Thanks a lot for this article. We're having serious issues with NET window forms application - they just hang if launched from task scheduler with a user that's not logged in console - on a production Windows 2003 SP2 server. It could be related to the installation of this rollup package, in that the problems started the same day of the installation. http://support.microsoft.com/kb/969612 This is the verify log: http://www.prjteam.com/riservato/nf_fail_log.txt. I suppose the failure is because our Windows installation is localized in Italian... Before venturing in net framework repair, can somebody check the log and tell if the failure is real or not? Thanks, Mario P.S. Other servers without the patch above fail the verification with the same results...Anonymous
March 06, 2010
Found the error only log: ====================================================================== [03/06/10,18:48:05] Beginning of new SetupVerifier error logging session [03/06/10,18:48:05] Activity log file location: C:DOCUME~1TS_USR~1IMPOST~1Temp1setupverifier_main_03-06-10_18.48.05.txt [03/06/10,18:48:05] Error log file location: C:DOCUME~1TS_USR~1IMPOST~1Temp1setupverifier_errors_03-06-10_18.48.05.txt [03/06/10,18:48:05] Build created on February 20, 2010 [03/06/10,18:48:05] Detected operating system: Windows Server 2003 (x86) [03/06/10,18:48:08] File C:WINDOWSsystem32MUI�409mscoreer.dll is not installed on the system [03/06/10,18:48:08] File C:WINDOWSMicrosoft.NETFrameworkv1.1.43221033alinkui.dll is not installed on the system [03/06/10,18:48:08] File C:WINDOWSMicrosoft.NETFrameworkv1.1.43221033cscompui.dll is not installed on the system [03/06/10,18:48:08] File C:WINDOWSMicrosoft.NETFrameworkv1.1.43221033vbc7ui.dll is not installed on the system [03/06/10,18:48:08] File C:WINDOWSMicrosoft.NETFrameworkv1.1.43221033Vsavb7rtUI.dll is not installed on the system [03/06/10,18:48:08] File C:WINDOWSMicrosoft.NETFrameworkv1.1.4322MUI�409mscorsecr.dll is not installed on the system [03/06/10,18:48:09] Key: HKLMSOFTWAREMicrosoftNET Framework SetupNDPv1.1.43221033 Value: SP Actual Data: UNABLE TO OPEN REGISTRY KEY [03/06/10,18:48:09] Key: HKLMSOFTWAREMicrosoftNET Framework SetupNDPv1.1.43221033 Value: Install Expected Data: 1 Actual Data: NOT FOUND [03/06/10,18:48:09] Verification failed for product .NET Framework 1.1 SP1Anonymous
March 06, 2010
Hi Mabian - All of the files and registry values that are being reported as errors in your scenario are English-specific files. If your version of Windows Server 2003 is non-English, then those errors can be safely ignored and I will need to update the verification tool accordingly. If the problems with your application only started happening when you applied KB969612 to your system, then I'd first suggest trying to uninstall that to see if it helps before proceeding to a full repair of the .NET Framework on your system.Anonymous
March 17, 2014
Hi I have installed .Net 2.0 on top of .Net 1.1 Framework in windows server 2003. Now i want to uninstall .Net framework 2.0. What will be impact of uninstalling .Net 2.0 on .Net 1.1 Whether 1.1 Net framework will properly or notAnonymous
March 18, 2014
Hi Boddu - You can safely uninstall the .NET Framework 2.0 and it will not impact the functionality of the .NET Framework 1.1 on your computer.