C++写的DLL一般会有导出函数,使用DLL查看工具能看到,但是C#写的DLL只有类库,怎么样在BCB里调用 C#写的类库DLL,或者C#怎么样才能写出有导出函数的DLL?
在网上查到过一些在C++里使用GCNEW这样创建,但是BCB里没有这样的指令,所以了解一下,除了类库有没有其他的解决办法。

解决方案 »

  1.   

    Calling Managed .NET C# COM Objects from Unmanaged C++ Code
    http://www.codeproject.com/Articles/12673/Calling-Managed-NET-C-COM-Objects-from-Unmanaged-C
      

  2.   

    我只会VS里面操作,在C++项目属性里找到“公共语言运行时支持”,选择除第一项以外的任意项,建议选择第二项(/clr)。然后在通用属性里面->“框架和引用”里面添加C#编写的DLL,这样就可以用clr方式的语法直接使用C#里public的方法和类型了。
    不过由于现在的Vs2010还不支持语法提示,因此任何错误只有编译时才能给出,虽然Vs2012支持语法提示了,但是还不是正式版,外加C++的库不支持XP,可以学习用,但不要实际生产使用。
      

  3.   

    另外你说的BCB如果可以调用C++写的DLL,那么就可以用我上面写的方式,先用VS编写C++调用C#,然后间接导出了。