检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件时失败

myselfnow 2014-01-07 01:42:21
检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005。 说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.UnauthorizedAccessException: 检索 COM 类工厂中 CLSID 为 {000209FF-0000-0000-C000-000000000046} 的组件时失败,原因是出现以下错误: 80070005。

ASP.NET 未被授权访问所请求的资源。请考虑授予 ASP.NET 请求标识访问此资源的权限。ASP.NET 有一个在应用程序没有模拟时使用的基进程标识(通常,在 IIS 5 上为 {MACHINE}\ASPNET,在 IIS 6 上为网络服务)。如果应用程序正在通过 <identity impersonate="true"/> 模拟,则标识将为匿名用户(通常为 IUSR_MACHINENAME)或经过身份验证的请求用户。

要将 ASP.NET 访问权限授予某个文件,请在资源管理器中右击该文件,选择“属性”,然后选择“安全”选项卡。单击“添加”添加适当的用户或组。突出显示 ASP.NET 帐户,选中所需访问权限对应的框。


.net程序操作word2010,vs直接运行浏览时正常,但在iis7下浏览出现组件错误提示,错误内容如上。
根据网上的一些方法操作无效,我的系统是win764位,系统安装了office 2010,但是找不到microsoft word 组件。
望大神赐教!非常感谢。
...全文
654 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
myselfnow 2014-01-20
  • 打赏
  • 举报
回复
最终放弃,改用aspose组件,直接操作,很好用。
myselfnow 2014-01-09
  • 打赏
  • 举报
回复
谢谢回复,首先我安装的是office2010完整版,软件可以正常使用。但是Dcom权限的时候没有找到跟2010版相关的组件服务,只有一个microsoft word 97-2003 document,该组件的权限都设置了,各种配置都设置了,但是没起作用。
myselfnow 2014-01-09
  • 打赏
  • 举报
回复
配置过了 在“DCOM配置”中,为IIS账号配置操作Word(其他Office对象也一样)的权限。 具体操作:“组件服务(Component Service)”->计算机(Computers)->我的电脑(My Computer)->DCOM配置(DCOM Config)->Microsoft Office Word 97 - 2003 文档,右击“Microsoft Office Word 97 - 2003 文档”,选择“属性”进行一下两步操作:   (1)在【标识(Identity)】选项卡中选中“交互式用户(The interactive user)”.   (2)在【安全(Security)】选项卡中,分别给前两个组(启动和激活权限,访问权限)选择“自定义(customer)”,然后点“编辑”,在弹出的界面中添加IIS账号(Server版的操作系统一般为NETWORK SERVICES,其他系统(XP)可能会是ASP.NET),并在下面的权限框中,给该用户分配所有权限。
Im_Sorry 2014-01-09
  • 打赏
  • 举报
回复
引用 2 楼 xupeihuagudulei 的回复:
Dcom权限没有配置。 google一下。
+1
by_封爱 2014-01-09
  • 打赏
  • 举报
回复
换控件吧 第三方的aspose.words...
myselfnow 2014-01-09
  • 打赏
  • 举报
回复
这些个方法都用了,都不起效,求助!!! 方法1:配置Web.Config文件,在每次请求时模拟本地系统的账户。   具体操作:在Web.Config文件中添加如下节点:   <identity impersonate="true" userName="accountname" password="password" />   其中:userName是要模拟的本地账号,password是该账号的密码。   方法2:在“DCOM配置”中,为IIS账号配置操作Word(其他Office对象也一样)的权限。 具体操作:“组件服务(Component Service)”->计算机(Computers)->我的电脑(My Computer)->DCOM配置(DCOM Config)->Microsoft Office Word 97 - 2003 文档,右击“Microsoft Office Word 97 - 2003 文档”,选择“属性”进行一下两步操作:   (1)在【标识(Identity)】选项卡中选中“交互式用户(The interactive user)”.   (2)在【安全(Security)】选项卡中,分别给前两个组(启动和激活权限,访问权限)选择“自定义(customer)”,然后点“编辑”,在弹出的界面中添加IIS账号(Server版的操作系统一般为NETWORK SERVICES,其他系统(XP)可能会是ASP.NET),并在下面的权限框中,给该用户分配所有权限。   方法3:为ASP.NET站点应用池分配本地账号 具体操作:在IIS中,为ASP.NET站点创建新的应用程序池,再改应用程序池属性的【标识(identity)】选项卡中,为“预定义账户”选择“本地系统(LocalSystem)”。   如果是IIS7.0中,则按以下步骤操作:为ASP.NET站点创建新的应用程序池。选中该应用程序池,高级设置->进程模式—>标识:选择localSystem。
xupeihuagudulei 2014-01-08
  • 打赏
  • 举报
回复
Dcom权限没有配置。 google一下。
code-fans 2014-01-08
  • 打赏
  • 举报
回复
装不全或少了Microsoft Office相关的开发包

62,025

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧