会学习的猪
2015-08-09 14:46C#调用C++ dll的参数转换问题,如何转换char **类型的参数到C#
这是C++代码
DLL_API int Onvif_Discovery(char** deviceaddress, int* nDevices);
这是C#调用
[DllImport("OnvifDll.dll",EntryPoint="Onvif_Discovery",
CharSet=CharSet.Ansi,CallingConvention=CallingConvention.StdCall)]
public extern static int Onvif_Discovery(out IntPtr deviceAddr, ref int nDevices);
其中deviceAddr的参数我试过ref string,string,stringbulider,都报错,尝试读写受保护的内存。
初学C#的妹子一枚,希望哪位有经验的C#大神给予解答!万分感激!!!
- 点赞
- 回答
- 收藏
- 复制链接分享
3条回答
为你推荐
- C#调用C++接口时参数传递
- c++
- c#
- 2个回答
- C#调用C++ Dll 返回信息与C++返回结构体中信息不一致?
- c++
- 4个回答
- 请问我在c#中用动态链接库的方式引入一个c++dll,在调用dll中的接口时,入参类型像这样转换是否正确?
- dll
- 库
- c++
- c#
- 动态链接库
- 3个回答
- Unity C#通过动态链接库调用C++传递中文字符串乱码问题。
- 混编
- unity
- c++
- 乱码
- 2个回答
- 此错误的地址为 0x66fab3fc,在线程 0x31b8 上.错误代码为 0xc0000005
- fatalexecutionerror
- 线程
- c#
- 5个回答
换一换