繁体   English   中英

在C#中调用C ++方法

[英]Calling C++ method in C#

我需要从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#。

您可以将2D数组展平为一个一维数组,然后将其传递。

 flattened_array[(y * width) + x] = source[x][y];

参考这个答案

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM