在c#中调用vc ++ dll

时间:2012-07-04 11:55:21

标签: c# visual-c++ dll dllimport

我在vc ++中有一个dll和相应的头文件(.h文件),现在我必须在c#中调用这个dll。 我对调用约定一无所知。

在头文件中有一个函数原型,如:

typedef void CBOnStop_VC( int nFGHandle, unsigned int nChannel, void* pClientData );

现在我想在c#中调用这个函数。

任何想法?

1 个答案:

答案 0 :(得分:0)

你可以使用这些步骤

1. compile your classe with the /clr switch

#include "NativeType.h"

public ref class ManagedType
{
     NativeType*   NativePtr; 

public:
     ManagedType() : NativePtr(new NativeType()) {}
     ~ManagedType() { delete NativePtr; }

     void ManagedMethod()
      { NativePtr->NativeMethod(); } 
}; 

2.Add a reference to your ManagedType assembly

ManagedType mt = new ManagedType();
mt.ManagedMethod();