Fatal CLR Error 80004005

2019-04-19 10:41发布

问题:

Today, everytime I try to open any .Net application I get:

CLR error: 80004005
The program will now terminate.

Any suggestions?

回答1:

I'd start with downloading and re-installing the .NET framework.



回答2:

I had this problem and uninstalling/reinstalling dot net didn't help.

Randomly I found a suggestion to go to c:\Windows\Microsoft.NET\

Then rename the directory called "Assembly" to "Assembly2" or something so you don't erase it but dot net will think it's gone.

After doing that, install dot net again.

This took hours for me to find and was the ONLY thing that worked.



回答3:

I believe 0x80004005 is (usually) an ACCESS DENIED error - so start with that in mind. If you're on Vista+, try running it as admin. Otherwise, Process Monitor should help you track it down.



回答4:

A quick search suggests this:

"If you get a Run-time error 80131522 "No Server registered or could not load class for CLSID ...", it is because you are trying to run the VB executable from a directory other than where the .NET assembly is located. This also happens if you try to run the vb code in interactive mode. This can be solved by installing the .NET assembly into the global application cache"

(http://bytes.com/forum/thread353655.html)

In an ASP.NET context, it appears this is related to file permissions:

The error code for the failure is 80004005. This error can be caused when the worker process account has insufficient rights to read the .NET Framework files. Please ensure

(http://weblogs.asp.net/jambrose/archive/2004/09/01/224226.aspx)



回答5:

@MarkBracket: I had a similar issue, but I think I finally fixed it thanks to Process Monitor.

My Solution: Go to "C:\Windows" and right click on the "Microsoft.NET" folder and click Properties. Click the "Security" Tab, then click the "Advanced" button. Click the "Owner" Tab, then click the "Edit..." button. Select your current user account, then check the box that says "Replace owner on subcontainers and objects" and then click "Ok".

Problem solved (for now at least). As it turns out, the programs simply didn't have the proper permissions needed to run.

Anyways, Thanks Again Mark I hope this post is helpful to any and all who have/get the CLR 80004005 error.



回答6:

Just want to answer this from development prospective, as I got into such problem and solved it.

The problem I had encountered was that I was deploying a WPF application on a none development machine, It crashed immediately with the message "Fatal CLR Error 80004005".

I realized that I compiled my application as .Net framework 4.5 and I was using an API call from System.Web namespace.

I solved it by changing the method call and then re-compiled it as .Net framework 4.0 Client Profile.



标签: clr