由于以下错误,检索具有 CLSID 00020906-0000-0000-C000-000000000046 的组件的 COM 类工厂失败:80070005

Posted

技术标签:

【中文标题】由于以下错误,检索具有 CLSID 00020906-0000-0000-C000-000000000046 的组件的 COM 类工厂失败:80070005【英文标题】:Retrieving the COM class factory for component with CLSID 00020906-0000-0000-C000-000000000046 failed due to the following error: 80070005由于以下错误,检索具有 CLSID 00020906-0000-0000-C000-000000000046 的组件的 COM 类工厂失败:80070005 【发布时间】:2010-08-10 11:39:29 【问题描述】:

当我的 Web 服务尝试通过我的 .net webb 服务以编程方式打开 MS Word 文档时,我遇到了上述错误。 当我通过 Visual Studio 运行 Web 服务时,它工作正常,但是当我在 IIS 7 上部署 Web 服务时,出现错误

检索 COM 类工厂 具有 CLSID 的组件 00020906-0000-0000-C000-000000000046 由于以下错误而失败: 80070005

我也看到过类似的问题,并在 ***、MSDN 和其他资源上尝试了他们的解决方案,但没有一个对我有用。大多数问题都可以追溯到 2008/2007 年。

我尝试使用 dcomcnfg 命令更改 DCOM 设置,并添加了“网络服务”、“网络”用户,还在“Microsoft Word 文档”组件属性中添加了我自己的用户 ID 并授予他们完全权限。我还在 web.config 中添加了 impersonate=true 属性。在完成所有这些之后,我也遇到了错误。谁能帮帮我?

我正在 MS vista 32 位操作系统上尝试所有这些,Office 版本是 Office 2003。

【问题讨论】:

【参考方案1】:

我使用的不是 Web 服务,而是 Windows 服务,当服务调用试图创建 Excel 对象的可执行文件时,我也遇到了同样的错误。我还阅读了许多其他资源,但没有一个对我有用。有几个非常接近,这导致我通过以下方式解决了这个问题:

    我去了服务器...开始..运行并运行“dcomcnfg”。 导航到组件服务...计算机...我的电脑...DCOM 配置...Microsoft Excel 应用程序。 打开属性并选择“身份”选项卡。 选择“启动用户”(而不是“交互式用户”)单选按钮,然后单击“确定”关闭属性对话框。

错误消失,应用程序在服务运行时生成 Excel 文件。

我正在调查是否可以通过其他方式从 Windows 服务中实现此功能,因为我不确定此解决方案是否会产生副作用。如果我发现其他任何问题,我会进一步更新。

【讨论】:

以上是关于由于以下错误,检索具有 CLSID 00020906-0000-0000-C000-000000000046 的组件的 COM 类工厂失败:80070005的主要内容,如果未能解决你的问题,请参考以下文章

由于以下错误,检索具有 CLSID XXXX 的组件的 COM 类工厂失败:80040154

Windows 10 sdk安装程序崩溃“检索具有CLSID的组件的COM类工厂”

检索 COM 类工厂中 CLSID 为 的组件时失败,原因是出现以下错误: 80040154。

检索COML类工厂中 CLSID为 {00024500-0000-0000-C000-000000000046}的组件时失败,原因是出现以下错误: 80070005" 《终结篇》

检索COM类工厂中CLSID为{000245000-0000-0000-C000-000000000046的组件时失败,出现错误以下80040154

检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005。