检索COM类工厂中CLSID为{000209FF-0000-0000-C

作者: Robin 分类: Asp.net 发布时间: 2009-07-17 11:53
异常详细信息:   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)或经过身份验证的请求用户。 
解决方法:
1.   运行DCOMCNFG(在系统的system32下),在   DCOM   配置对话框中,从列表中选择microsoft   word文档,单击默认安全性选项卡。  
2.   单击访问权限的编辑默认值。验证访问权限中是否列出下列用户,如果没有列出,则添加这些用户:
SYSTEM
INTERACTIVE
Everyone
Administrators
IUSR_ <machinename> *
IWAM_ <machinename> *
*   这些帐户仅在计算机上安装了   Internet   Information   Server   (IIS)   的情况下才存在。  
3.   单击启动权限的编辑默认值。验证启动权限中是否列出下列用户,如果没有列出,则添加这些用户:
SYSTEM
INTERACTIVE
Everyone
Administrators
IUSR_ <machinename> *
IWAM_ <machinename> *
*   这些帐户仅在计算机上安装有   IIS   的情况下才存在。  
4.windowsXP:选择“身份标识”,在选定“交互式用户”;
windows   2003:选择“下列用户”,添上管理员用户名和密码    
5.windowsXP:Web.config       添加       <identity       impersonate= “true ”     userName= ” ”   password= ” ”   />      
  windows   2003:Web.config       添加       <identity       impersonate= “true ”       />
 
 
别人的解决方法,也可以参考一下:(其他com的配置都类似)

具体配置方法如下:  
1:在服务器上安装office的Excel软件.  
2:在 “开始 “-> “运行 “中输入dcomcnfg.exe启动 “组件服务 ”  
3:依次双击 “组件服务 “-> “计算机 “-> “我的电脑 “-> “DCOM配置 ”  
4:在 “DCOM配置 “中找到 “Microsoft   Excel   应用程序 “,在它上面点击右键,然后点击 “属性 “,弹出 “Microsoft   Excel   应用程序属性 “对话框  
5:点击 “标识 “标签,选择 “交互式用户 ”  
6:
点击 “安全 “标签,在 “启动和激活权限 “上点击 “自定义 “,然后点击对应的 “编辑 “按钮,在弹出的 “安全性 “对话框中填加一个
“NETWORK   SERVICE “用户(注意要选择本计算机名),并给它赋予 “本地启动 “和 “本地激活 “权限.  
7:依然是 “安全 “标签,在 “访问权限 “上点击 “自定义 “,然后点击 “编辑 “,在弹出的 “安全性 “对话框中也填加一个 “NETWORK   SERVICE “用户,然后赋予 “本地访问 “权限.  
这样,我们便配置好了相应的Excel的DCOM权限.  
注意:我是在WIN2003上配置的,在2000上,是配置ASPNET用户

如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!

发表评论

电子邮件地址不会被公开。 必填项已用*标注

标签云