problem repairing .net 2 to recover mscorjit.dll
Hi All,
I have always set my windows updates to only advise me when are new updates. Last week, I woke up to find my Windows 7 machine in the process of shutting down and installing updates. I let it go but it never finished.
The fun started after I hard rebooted it.
It appeared to only start in safe mode. In normal startup, I got a black screen before the login appeared. In safe mode, I saw that a system restore point had been created about 8 hours previously. I assume it has been stuck installing since
then.
After doing the system restore, the black screen persisted. I eventually worked out that I could remote desktop into the PC which pointed to the video drivers. I uninstalled the drivers remotely and then reinstalled the latest and got it running.
However, a lot of my programs were now failing to start with a missing mscorjit.dll error.
I have tried lots of things suggested in various forums. I used the clean up tool and removed all .NET versions. When I wenr to reinstall them I found out they were a part of the W7 OS and couldn't be installed.
Using procmon.exe I worked out that the mscorjit.dll from Net 2 was the one being requested.
I can't seem to do anything with any .NET version previous to 4. As suggeted using System Features, I can remove and then reinstall .Net Frameork 3.5 but this doesn't solve the problem. The mscorjit.dll is still missing for version 2 at least.
No other .net will install or repair as they are a part of the OS. I really dont want to reinstall at this point. I tried an Windows 7 upgrade mode as suggested by one post but this wouldn't let me proceed. I havn't tried the startup repair
yet (to
scary). I dont want to lose any more production time at the moment.
I have sfc /scannow and it reports that Windows Resource Protection found corrupt files but was unable to fix some of them
The produces log file is large. A lot of cannot repair member entries. One of interest is..
2012-06-08 13:15:24, Info CSI 00000323 [SR] Could not reproject corrupted file [ml:520{260},l:98{49}]"\??\C:\Windows\Microsoft.NET\Framework\v2.0.50727"\[l:24{12}]"mscorjit.dll";
source file in store is also corrupted
I get the same for the following files..
[ml:520{260},l:102{51}]"\??\C:\Windows\Microsoft.NET\Framework64\v2.0.50727"\[l:20{10}]"System.dll";
[ml:520{260},l:98{49}]"\??\C:\Windows\Microsoft.NET\Framework\v2.0.50727"\[l:20{10}]"System.dll";
[ml:520{260},l:98{49}]"\??\C:\Windows\Microsoft.NET\Framework\v2.0.50727"\[l:30{15}]"mscordacwks.dll";
[ml:520{260},l:98{49}]"\??\C:\Windows\Microsoft.NET\Framework\v2.0.50727"\[l:24{12}]"mscorjit.dll";
[ml:520{260},l:98{49}]"\??\C:\Windows\Microsoft.NET\Framework\v2.0.50727"\[l:20{10}]"System.dll";
[ml:520{260},l:98{49}]"\??\C:\Windows\Microsoft.NET\Framework\v2.0.50727"\[l:30{15}]"mscordacwks.dll";
[ml:520{260},l:102{51}]"\??\C:\Windows\Microsoft.NET\Framework64\v2.0.50727"\[l:20{10}]"System.dll";
[ml:520{260},l:98{49}]"\??\C:\Windows\Microsoft.NET\Framework\v2.0.50727"\[l:24{12}]"mscorjit.dll";
How can I repair the files in the store so that SFC will work? Can I copy them the Win 7 installation disc?
Is it permissions thing? I get a lot of "Ignoring duplicate ownership for directory" through the CBS.Log file.
regards
Justin.
June 8th, 2012 12:39am
1. Which clean tool have you used? This one from
http://support.microsoft.com/kb/976982/cs ?
2. Use recovery from installation DVD (or in-place upgrade)
Regards
Milos
Free Windows Admin Tool Kit Click here and download it now
June 8th, 2012 1:48am
Hi Milos,
I have tried that one. I used the Microsoft suggested third-party clean tool (http://blogs.msdn.com/b/astebner/archive/2008/08/28/8904493.aspx).
I have tried to do an inplace upgrade but it stopped saying I couldn't upgrade this version. I was using the same disc as when I installed the pc (win7 64 bit).
I haven't tried a recovery yet. This is my production machine and the .net problems are small compared to possibly hacing to reinstall everything if something goes wrong.
I think a windows update failed and it corrupted my .net source files which means I can't have them reinstalled properly. Strange because I always set my windows update to only notify. Why does this keep changing?
I am after a way to copy the source files from somewhere else. I have another 64bit Win 7 pc. Can I just copy the files from one to another or are there registry entries that go along with them.
I am assuming that the cleanup tool also cleaned the registry entries although the documentation says that it doesn't remove any OS-Built-In .net versions.
Justin.
June 14th, 2012 7:26pm