zoukankan      html  css  js  c++  java
  • C#使用Office功能80070005错误的处理方法

    由于要把客户端的插件实现的文件签字功能在Web端实现,需要调用office的com组件,但是在启动EXCEL的时候弹出框报错“会报“错误代码就是80070005(检索COM类工厂中CLSID为{000209FF-0000-0000-C000-000000000046}的组件时失败,原因是出现以下错误: 80070005”,最后确定还是权限的问题

    需要解决权限问题操作以下步骤即可:

    1.本地的iis对应的应用程序池的找到对应的名称选择高级设置,在标识标签选择 LocalSystem:

    一般是可以设为LocalSystem或者NetworkService两种用户的,但如果先执行这步那么只可以设置LocalSystem,走过2、3步的之后即可两种用户都可设置。
    2.如果这种方式没有解决,就要进入第二步:
    1)..在”开始”->”运行”中输入dcomcnfg.exe启动”组件服务”
    2).依次双击”组件服务”->”计算机”->”我的电脑”->”DCOM配置”
    3).在”DCOM配置”中找到”Microsoft Excel 应用程序”,在它上面点击右键,然后点击”属性”,弹出”Microsoft Excel 应用程序属性”对话框
    4).点击”标识”标签,选择”交互式用户”
    5).点击”安全”标签,在”启动和激活权限”上点击”自定义”,然后点击对应的”编辑”按钮,在弹出的”安全性”对话框中填加一个”NETWORK SERVICE”用户(注意要选择本计算机名或亦可添加其他需求的用户比如Everone用户等),并给它赋予”本地启动”和”本地激活”权限
    6).依然是”安全”标签,在”访问权限”上点击”自定义”,然后点击”编辑”,在弹出的”安全性”对话框中也填加一个”NETWORK SERVICE”用户(或亦可添加其他需求的用户比如Everone用户等),然后赋予”本地访问”权限.
    7).之后重复第1步操作。
    3.有些服务器是64位版本的,因此打开DCOMCNFG之后,找不到项“Microsoft Excel 应用程序”,因为DCOMcnfg是32配置,在64位系统下能完全被支持,打开32位的DCOMCNFG的方式:
    1).运行:mmc -32
    2).打开“文件”-“添加或删除管理单元”-选择组件服务-点击添加-确定。
    3).可以在DCOM组件中找到Microsoft Excel Application了。
    4).之后重复第2步,第1步。

    到此,问题基本解决,功能可以正常使用了。建议将office版本升级到最新,因为最新版本的office对功能支持的更完善,一些计算上缺陷已经修复。

  • 相关阅读:
    IE下判断IE版本的语句...[if lte IE 6]……[endif]
    “浏览器模式”和“文档模式”
    IoC框架---通俗概述
    Castle IOC容器组件生命周期管理
    Castle学习笔记----初探IOC容器
    Castle IOC容器内幕故事(下)
    Castle IOC容器内幕故事(上)
    Castle IOC容器构建配置详解(二)
    javascript属性一览
    javascript addEventListener方法
  • 原文地址:https://www.cnblogs.com/lyw0826/p/14275589.html
Copyright © 2011-2022 走看看