.NET COM与其他库的引用进行互操作

.NET COM与其他库的引用进行互操作,com,Com,从COM互操作库加载托管库中的类时,我遇到了一个问题 基本上我有一些非托管C++代码和一个用C语言编写的COM互操作库。最后是COM互操作库引用的第三个库,其中包含一个类: public class MyClass{ public MyClass(){} } 我想从我的非托管C++代码中调用互操作库中的函数 C++代码不需要知道第三库的存在,它只在互操作中使用。 Init(){ MyClass _class=新的MyClass(); } 出于某种原因,Init中的这一行“MyClass _

从COM互操作库加载托管库中的类时,我遇到了一个问题

基本上我有一些非托管C++代码和一个用C语言编写的COM互操作库。最后是COM互操作库引用的第三个库,其中包含一个类:

public class MyClass{
  public MyClass(){}
}

我想从我的非托管C++代码中调用互操作库中的函数 C++代码不需要知道第三库的存在,它只在互操作中使用。 Init(){ MyClass _class=新的MyClass(); }

出于某种原因,Init中的这一行“MyClass _class=new MyClass();”失败,并且我没有得到非常有用的错误消息,我只需要在我的输出窗口中执行以下几项: “dotNETSCOMLCAL.EXE中0x7C812AFB的第一个机会例外:微软C++异常:[重新投掷]在内存位置0x00亿…..

和“HESRESHR=PDOTNETCOMPTRO->In())的HESREST;“C++系统中的行是“系统找不到指定文件”< /P> 我是COM的新手,所以如果有人有任何想法或建议让我走上正确的方向,我将不胜感激


谢谢

没关系,我想我是自己想出来的。看起来互操作DLL和互操作引用的第三个DLL需要位于同一个目录中。

我要看看Init实际上在做什么-您看到的错误可能是从Init返回的,代表它失败的调用。