当我的 Web 服务尝试通过我的 .net Web 服务实际打开 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。谁能帮我解决这个问题。
最佳答案
我刚刚收到此错误,通过调整服务器上 DCOM 配置中的权限解决了该错误:
- 点击开始 -> 运行 -> dcomcnfg
- 展开组件服务 -> 计算机 -> 右键单击我的电脑 -> 属性
- 在“COM 安全性”选项卡上,单击“启动和激活权限”下的“编辑默认值”
- 通过本地启动和本地激活添加网络服务和 IIS_IUSRS
为此无需重新启动。如果您的应用程序池在其他用户下运行,请添加该用户。
关于web-services - 由于以下错误 : 80040005,检索 CLSID {XXXX} 组件的 COM 类工厂失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12603000/