生成的dll怎么才能调用阿?急

解决方案 »

  1.   

    非托管使用托管对象,只有一种办法,就是把托管对象作为Com对象暴露出来。非托管程序就像使用Com一样来使用托管对象。具体做起来,非托管的部分稍微复杂一些,托管的部分不复杂,C#高级编程第4版上说的很清楚了。
      

  2.   

    谢谢。我用c#做的dll,他们c++的调用也就是说要生成com接口才行,那他们的环境必须要framework,然后regasm 一个tlb,还要添加全局缓存,这样理解对吗
      

  3.   

    必须要framework是对的不一定需要注册类型库,在.net中导出的Com对象都可以支持IDispatch接口,可以Invoke的不注册使用,就不是标准的Com对象使用方式了,要用到.net的一些API(非托管的),细节我记不清楚了。这些API可以让你的非托管程序生成一个托管对象并且返回他的接口进行使用。