引用一个COM组件形式的dll
出现如下错误:
未处理的“System.Runtime.InteropServices.COMException”类型的异常出现在 WindowsApplication1.exe 中。其他信息: 带有 CLSID {A8389C98-D33A-4F0E-815B-B268C0F2A819} 的 COM 对象无效或未注册。请问是什么原因呢?
COM组件是不是一定要注册才能使用?
但这个COM组件注册不成功
而给这个组件的人告诉我他们以前不用注册都可以使用的

解决方案 »

  1.   

    运行->REGSVR32  路径+你的dll
      

  2.   

    注册不了
    这个组件还真奇怪
    是用VB写的
    但非得在电脑上装个VB再编译再注册一下才能在。NET里使用
    而且编译后就把VB删除也没问题
      

  3.   

    你懂说了这个顺序了,实现注册成功,再在.net里使用,这时候.net已经把com组件转换成了可以直接调用的了
    现在是没注册成功,既然没注册成功当然不能用了
      

  4.   

    问题就是没装VB就注册不成功
    但装了VB就可以注册成功了
    总不能每次给客户安装程序时都先装个VB再注册组件再删除VB吧?
    嘿嘿
    如果这样不是很麻烦?
      

  5.   

    用TLBIMP导入到相应的目录之后再引用就OK了!
      

  6.   

    没装VB前用tlbimp导入后引用还是不行
    装了VB后得编译组件再用tlbimp导入再引用就可以
    之后删除VB
    然后用tlbimp导入再引用也可以