C#调用DLL里面的char **p

来源:百度知道 编辑:UC知道 时间:2024/06/02 04:21:29
我有一个DLL,可是参数有一个char **p,比如DLL导出的接口函数为TEST(char *s, char **p)p存储的是要返回的结果!请问在C#里如何调用这个函数得到我想要的返回值呢

如果dll文件是托管代码,直接附加到bin中就可以在程序中直接调用了,如果是非托管类,那只能使用

使用DllImportAttribute 标记一个公共静态外部方法,如
[DllImport("你的Dll的名字")]
public static extern void TEST(IntPtr s1,IntPtr s2);

传一个二维数组(char[,])或者在unsafe代码块里直接用指针。

也可以试试交错数组(char[][]),这个我也没试过。

使用DllImportAttribute 标记一个公共静态外部方法,如
[DllImport("你的Dll的名字")]
public static extern void TEST(IntPtr s1,IntPtr s2);

直接用string应该是可以的!