在C#和非托管C+之间传递自定义对象+;

在C#和非托管C+之间传递自定义对象+;,c#,c++,.net-2.0,pinvoke,unmanaged,C#,C++,.net 2.0,Pinvoke,Unmanaged,我有一个遗留的DLL,其中包含一些我需要从C#代码调用的方法。这些方法中的一个指向指向另一个C++类的指针,该类位于其他C++程序中,而不是DLL。p> 我非常确定我需要使用pinvoke来来回封送对象,但是我还没有找到任何关于封送自定义对象的方法 实现这一点的最佳方法是什么?您确定它是类而不是结构吗?毕竟,不同的编译器可以选择在内存中对类进行不同的布局,这会破坏目标DLL 你考虑过使用托管的C++包装吗?< /p> 我会看C++ + CLI,尽管COM互操作可能取决于C++代码的形状。 如果只

我有一个遗留的DLL,其中包含一些我需要从C#代码调用的方法。这些方法中的一个指向指向另一个C++类的指针,该类位于其他C++程序中,而不是DLL。p> 我非常确定我需要使用pinvoke来来回封送对象,但是我还没有找到任何关于封送自定义对象的方法


实现这一点的最佳方法是什么?

您确定它是类而不是结构吗?毕竟,不同的编译器可以选择在内存中对类进行不同的布局,这会破坏目标DLL


<>你考虑过使用托管的C++包装吗?< /p> 我会看C++ + CLI,尽管COM互操作可能取决于C++代码的形状。

如果只是使用SWIG

的一些方法