【发布时间】:2015-02-03 06:54:09
【问题描述】:
我需要从 c# 调用一个 c++ 函数。
c++函数是
BOOL Usb_GetDevicesList(int &iNbDevices, char aszDeviceName[][128]);
我试过了
[DllImport("UsbComm.dll", SetLastError = true, CharSet = CharSet.Ansi, ExactSpelling = true, CallingConvention = CallingConvention.Cdecl)]
public static extern int Usb_GetDevicesList(int iNbDevices, out byte[][] aszDeviceName);
我有错误
无法编组“参数 #2”:没有编组支持 嵌套数组。
请帮助我将此 c++ 函数转换为 C#。
【问题讨论】:
-
大概
iNbDevices包含输入时提供的数组aszDeviceName的长度,以及退出时写入数组的项目数?如果提供的数组不够长,则返回FALSE。除非您还解释了函数的语义,否则很难提供帮助。