11

.Net 中的“检索 CLSID {XXXX} 组件的 COM 类工厂失败,原因是以下错误:80080005”错误的故障排除过程是什么?澄清一下:我在运行时得到这个,在我的 XP 机器上,客户端是在管理员帐户下运行的 .net 代码。{XXXX} 是指我们内部的 COM 组件之一。

据我了解, 0x80080005 是指“权限被拒绝”,但我该去哪里检查/更改权限?还是我在这里完全错了,错误来自组件本身,而不是来自 Windows COM 子系统?

4

3 回答 3

10

似乎是与启动 COM 服务器有关的一个相当普遍的错误。可能的问题包括超时登录失败(检查 Q about CO_E_SERVER_EXEC_FAILURE)或安全权限,或(显然)VS2008 ATL 错误。我认为,在 CreateInstance 中遇到错误也可以解决问题。

我会首先检查事件日志中是否有任何有趣的东西。

于 2008-11-10T21:55:09.130 回答
1

根据 ERRLOOK.EXE,0x80080005 是“服务器执行失败”。WinError.h 将此列为CO_E_SERVER_EXEC_FAILURE. 不是“拒绝访问”。

于 2008-11-10T21:12:18.873 回答
0

您可以查看的一件事是 DCOM 安全配置。它由 dcomcnfg 实用程序控制。网络上有有用的教程视频来解释如何使用它。ASP.NET 论坛上还有一个讨论如何使用 dcomcnfg 的主题。

于 2009-11-06T18:59:19.173 回答