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

时间:2012-09-26 13:35:04

标签: web-services office-2007 dcom

当我的网络服务尝试通过我的.net网络服务实际打开MS Word文档时,我收到以下提到的错误。当我通过visual studio运行Web服务时,它工作正常但是当我在IIS 7上部署Web服务时,我收到错误

Retrieving the COM class factory for component with CLSID 
{000209FF-0000-0000C000-000000000046} failed due to the following error: 80070005
Access is Denied

在以下一行。

Microsoft.Office.Interop.Word.Application oWordApp = new Microsoft.Office.Interop. Word.Application();
Microsoft.Office.Interop.Word.Document oWordDoc = new Microsoft.Office.Interop.Word.Document();

我已在服务器端编写此代码。它必须打开word文档模板,找到并替换一些值,并保存为不同的名称

我正在使用64位系统和Office 2007.任何1都可以帮助我解决问题。

1 个答案:

答案 0 :(得分:4)

我刚收到此错误,它是通过调整服务器上DCOM配置中的权限来解决的:

  1. 点击开始 - >运行 - > DCOMCNFG
  2. 展开组件服务 - >计算机 - >右键单击我的电脑 - >特性
  3. 在“COM安全”选项卡上,单击“启动和激活权限”下的“编辑默认值”
  4. 使用本地启动和本地激活
  5. 添加网络服务和IIS_IUSRS

    不需要重启。如果您的应用程序池在其他用户下运行,请改为添加该用户。