我在C++的dll中定义了一个函数 void fun(unsigned char* ); 现在我要在C#中调用这个函数
我在C++的dll中定义了一个函数voidfun(unsignedchar*);现在我要在C#中调用这个函数:定义了一个byte[]aa;我该怎么把这个aa传到fun函数...
我在C++的dll中定义了一个函数 void fun(unsigned char* ); 现在我要在C#中调用这个函数:定义了一个byte[ ] aa; 我该怎么把这个aa传到fun函数中呢?
展开
2个回答
展开全部
如果在C++里声明的函数形参原型是char*,那么我会这样子调用:
C++ API原型如下:
extern "C"{
_declspec(dllexport) void fun(unsigned char* ){
// 此处省略...
}
}
则,在C# 调用与声明如下:
[DllImport("你的动态链接库名称.dll", CallingConvention = CallingConvention.Cdecl)]
public static extern void fun(StringBuilder sb); // 采用StringBuilder
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询