问题描述
.Net 中检索带有 CLSID {XXXX} 的组件的 COM 类工厂失败,原因是以下错误:80080005"错误的故障排除过程是什么?澄清一下:我在运行时得到这个,在我的 XP 机器上,客户端是在管理员帐户下运行的 .net 代码.{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 服务器有关的一个相当普遍的错误.可能的问题包括 超时、登录失败(查看关于CO_E_SERVER_EXEC_FAILURE
的问题),或安全权限,或者(显然)a 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.
这篇关于由于以下错误,检索具有 CLSID {XXXX} 的组件的 COM 类工厂失败:80080005的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!