11

What is the troubleshooting process for the "Retrieving the COM class factory for component with CLSID {XXXX} failed due to the following error: 80080005" errors in .Net? To clarify: I am getting this at runtime, on my XP machine, with client being .net code running under admin account. {XXXX} refers to one of our in-house COM components.

From what I understand, 0x80080005 refers to "permission denied", but where do I go to check/change the permissions? Or am I completely wrong here, and the error is coming from the component itself, and not out of Windows COM subsystem?

user8032
  • 1,221
  • 1
  • 9
  • 17
  • 1
    Really need more info to answer. Is your app a desktop app? Is it running as a std user or admin? Is the COM object local or remote? – Tim Farley Nov 10 '08 at 21:04
  • 1
    Your question may be too vague to receive a meaningful answer. Are you receiving this error at compile-time? Run-time? What COM component is causing the error? If error is at run-time, are you running as a non-admin user on XP or Vista? – Judah Gabriel Himango Nov 10 '08 at 21:02
  • I've ran into something similar. I can say-at least from my own experience-that it can occur from an app that is ran locally, ran under the context of a service account while that svc acct is your own user name while you have Admin privileges on the machine, and the COM object was local to the machine. The error would occur when trying to initiate code that accesses the COM object. I agree which COM object still is left out - in my example, it was the Word object. – vapcguy Nov 07 '18 at 18:40
  • Related - https://stackoverflow.com/questions/3477086/accessing-office-word-object-model-through-asp-net-results-in-failed-due-to-the – vapcguy Nov 09 '18 at 01:31

3 Answers3

10

Seems to be a rather generic error relating to starting up the COM server. Possible issues include timeouts, logon failures (check the Q about CO_E_SERVER_EXEC_FAILURE), or security permissions, or (evidently) a VS2008 ATL bug. Hitting an error in CreateInstance would do the trick as well, I think.

I'd start by checking Event Log for anything interesting.

Mark Brackett
  • 84,552
  • 17
  • 108
  • 152
  • I just dug up server's source code. It is C++/ATL. Shudder. It appears to be easier to work around this stuff then to get to the bottom of it. – user8032 Nov 10 '08 at 22:26
  • 1
    Hi. Your post is very interesting. However, the links in it seem to have a syntax problem, and the secfac.htm seems to have moved to http://alt.pluralsight.com/wiki/default.aspx/Keith/ComSecurityFaqEx2.html – chiccodoro Oct 13 '09 at 15:16
  • 1
    Should avoid link only answers and supply some of the things under these to check, instead. The "logon failures" and "security permissions" links are already dead links. The ATL bug should no longer apply if the developer is using VS 2008 SP1 or above. – vapcguy Nov 06 '18 at 22:54
1

0x80080005 is "Server Execution Failed", according to ERRLOOK.EXE. WinError.h lists this as CO_E_SERVER_EXEC_FAILURE. Not "Access Denied".

Roger Lipscombe
  • 89,048
  • 55
  • 235
  • 380
0

One thing that you can look at is the DCOM security configuration. It is controlled by the dcomcnfg utility. There are helpful tutorial videos on the web to explain how to use it. There is also a thread on the ASP.NET forum that discusses how to use dcomcnfg.

Eric Ness
  • 10,119
  • 15
  • 48
  • 51
  • 1
    Link only answers are discouraged. The tutorial is now a dead link. The thread is relevant - what he did was to add permission to the DCOM Config > Microsoft Word 93-2000 remote launch activation for the Network Service account. You should've just added that here. A SO link (which will be active so long as this page is) has the instructions on how to do that, though they recommend using the Interactive User, or none, if that doesn't work, so 3 options: https://stackoverflow.com/questions/3477086/accessing-office-word-object-model-through-asp-net-results-in-failed-due-to-the – vapcguy Nov 09 '18 at 01:29