检索COM类工厂具有CLSID {XXXX}组件由于以下错误而失败:80080005组件、工厂、错误、COM

2023-09-02 21:46:40 作者:如何.

什么是故障排除过程中的检索的组件的COM类工厂CLSID {XXXX}由于以下错误而失败:80080005在.net中的错误?为了澄清:我得到这个在运行时,在我的XP的机器,使用客户端是.NET code在管理员帐户下运行。 {XXXX}是指我们内部的COM组件之一。

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.

据我了解,0x80080005是指权限被拒绝,但我在哪里去检查/更改权限?还是我完全错了这里,并且错误是从组件本身的到来,而不是出于的Windows COM子系统?

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?

推荐答案

好像是关于启动COM服务器一个比较通用的错误。可能出现的问题包括:超时,的security权限,或(显然)一个VS2008 ATL错误。击中的CreateInstance错误会做的伎俩还有,我想。

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.