我有一个遗留DLL,其中包含我需要从C#代码调用的几种方法。其中一个方法接受指向另一个C ++类的指针,该类存在于其他C ++程序中,而不是DLL中。
我很确定我需要使用pinvoke来回来编组对象,但是我没有在编组自定义对象上找到任何东西。
实现这一目标的最佳方式是什么?
答案 0 :(得分:1)
你确定它是一个类而不是结构吗?毕竟,不同的编译器可以选择在内存中以不同的方式放置类,这会破坏目标DLL。
您是否考虑过使用托管C ++包装器?
答案 1 :(得分:1)
我会看看C ++ / CLI,虽然根据C ++代码的形状,COM互操作可能会更容易。
答案 2 :(得分:0)
如果只有几种方法使用swig