Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Illegal operation attempted on a registry key that has been marked for deletion - only in IE

I have a web application that throws the following error when running in IE:

Illegal operation attempted on a registry key that has been marked for deletion

It works fine in Chrome. Unfortunately this is a production deployment and I do not have access to see any more detailed information on the error.

I have read some information related to this error message here

http://social.msdn.microsoft.com/Forums/en-US/90e22b43-e24f-44be-9345-ecbade0b32c9/urgent-comexception-illegal-operation-attempted-on-a-registry-key-that-has-been-marked-for?forum=commserver2007

and here

http://blogs.msdn.com/b/distributedservices/archive/2009/11/06/a-com-server-application-may-stop-working-on-windows-server-2008.aspx

Here is the Windows Event log which is consistent with what is described in those 2 links:

enter image description here

But it boggles me as to why this would only be occurring when using IE. Any ideas?

like image 983
mclaassen Avatar asked Aug 12 '14 19:08

mclaassen


2 Answers

The error seems to be caused by either a bug or memory leak related to COM+. Restarting the Application Pool or restarting IIS should fix the issue. Be warned that it might crop up again out of the blue, so consider restarting your app pool on a scheduled basis.

It is unlikely that the error is browser related. It is possible the app was working in Chrome due to caching. Or perhaps production has multiple servers, and Chrome was hitting a good server, and IE was hitting the bad sever.

like image 136
James Lawruk Avatar answered Oct 14 '22 07:10

James Lawruk


FROM MSDN

https://blogs.msdn.microsoft.com/dsnotes/2016/03/01/com-intermittent-error-800703fa-illegal-operation-attempted-on-a-registry-key/

Cause:

The event warning explains that when the profile was being unloaded, the w3wp.exe process had a registry key handle to the profile hive for the user.

As per the kb947238 article, event 1530 occurs because Windows automatically closes any registry handle to a user profile that is left open by an application. This causes the error 800703fa.

Resolution:

Go to IIS Manager, select the Application Pool for your web application and click Advanced settings, change the value for "ProcessModel" > "Load User Profile" to "true"

screenshot of IIS settings, Application Pool, Advanced Settings, Process Model heading, Load User Profile setting, value is False, value should be True

Setting this values makes the IIS loads the user profile for the application pool identity.

WORKAROUND (NOT FROM MSDN) Either recycle the application pool or do an iisreset.

like image 33
HerbalMart Avatar answered Oct 14 '22 09:10

HerbalMart