解决 window server2008 r2 没有注册Ofiice组件的方法
.NET下在用Microsoft.Office.Interop.Excel及word 操作Excel和Word时,出现“检索 COM 类工厂中 CLSID 为 {00024500-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005”错误。现在以操作 Microsoft.Office.Interop.Word为例,我本地是Win7 + Office2007 环境
或者
.NET下在用Microsoft.Office.Interop.Excel及word 操作Excel和Word时,出现“检索 COM 类工厂中 CLSID 为 {00020906-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005”错误。现在以操作 Microsoft.Office.Interop.Word
1:在Windows 2008 R2/Win7/Win2003/WinXp/win2000 os中首先要安装Word。然后在“组件服务”中 依次找到 "组件服务"->"计算机"->"我的电脑"->"DCOM配置"。运行"中输入dcomcnfg.exe启动"组件服务"。
2:在"DCOM配置"中找到"Microsoft Office Word 97 - 2003 文档",在它上面点击右键,然后点击"属性",弹出"Microsoft Excel 应用程序属性"对话框。如果环境是 Windows 2008 R2可能找不到"Microsoft Office Word 97 - 2003 文档"。你可以 运行mmc -32 ,然后会弹出一个程序,在菜单中选择 添加/删除管理单元 添加Component Services,然后在Component Services下找到word后再进行以下的配置。(组件缓存目录 c:\windows\assembly)
3:在"标识"标签,选择"交互式用户"
4:在"安全"标签,在"启动和激活权限"上点击"自定义",然后点击对应的"编辑"按钮,在弹出的"安全性"对话框中填加一个"NETWORK SERVICE"用户(注意要选择本计算机名),并给它赋予"本地启动"和"本地激活"权限.
5:在"安全"标签,在"访问权限"上点击"自定义",然后点击"编辑",在弹出的"安全性"对话框中也填加一个"NETWORK SERVICE"用户,然后赋予"本地访问"权限