遇到的问题--Retrieving the COM class factory for component with CLSID

来源:互联网 发布:java雷霆战机图片素材 编辑:程序博客网 时间:2024/06/04 00:21

重装系统之后 


运行一个对excel组件进行操作的程序 报错如下:


  • Retrieving the COM class factory for component with CLSID {......} failed due to the following error: 80040154 没有注册类 (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).


网上有一种是修改DCOM配置的方法,这个方法在附录中给出。(这个方法我没实验过)


我是用修复工具后,解决的。


  • 很多人都下载VBA绿色版,这样很方便
    但是问题就是如果你的程序调用VBA
    就会报功能要求的vba不可用、需要VBA宏语言的支持、C# 调用时候提示
    Retrieving the COM class factory for component with CLSID {000209FF-0000-0000-C000-000000000046} failed due to the following error: 80040154 没有注册类 (Exception from HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG)).
    等等的错误
    这个工具就是为了修复office绿色版的VBA
    这样不用去装个完整OFFICE

    使用方法:将程序放到word目录下面(一般在C:\program files\Microsoft Office\)
    运行选择修复 


下载地址:

http://download.csdn.net/detail/q383965374/5731101

http://down.51cto.com/data/185336  




附录:

【Excel】Retrieving the COM class factory for component with CLSID {00024500-0000-0000-C000-000000000046}:


1.首先确保你的服务器上正确安装了excel


2.确保你的服务器上注册了COM组建
  搜索OWC11.dll,如果没有,重新安装office


3.解决方法1:
  1)运行dcomcnfg打开组件服务


  2)依次展开"组件服务"->"计算机"->"我的电脑"->"DCOM配置"


  3)找到"Microsoft Excel应用程序"


  右键打开属性对话框


  点击"安全"选项卡,


  把"启动和激活权限","配置权限",都选择为自定义,


  然后依次点击它们的编辑,把ASPNET添加进去,并加入所有的权限...


  图文说明:http://hi.baidu.com/bizee/blog/item/dae84aee69488ef6b2fb95d7.html


  配置好了之后IIS不需重启,但是必须点击“应用”,否则无效(T T,因此困扰了很久,内牛满面。。。)




4.如果以上解决办法无效,再试试下面的:


  运行dcomcnfg打开组件服务


  依次展开"组件服务"->"计算机"->"我的电脑"->"DCOM配置"


  找到"Microsoft Excel应用程序"


  右键打开属性对话框,点击"标识"选项卡


  点"下列用户",把管理员的用户密码正确填写进去...


  点击"安全"选项卡,


  把"启动和激活权限"设置为自定义,并加上Network service的所有权限,点击“确定”,“应用”;


  如果还不行,则:


  依次把"启动和激活权限","访问权限","配置权限",都选择为自定义,


  然后依次点击它们的编辑,把everyone添加进去,并加入所有的权限。

原创粉丝点击