На основе следующего содержимого заголовка C ++:
typedef struct {
char myVar[30][50];
}MyStruct;
extern "C" int WINAPI MyFunction(MyStruct *Configuration,int *CfgSize);
Я искал много примеров через Интернет, но ни один не использует матричная переменная внутри массив структур в качестве параметра.
Может кто-нибудь сказать, пожалуйста, как использовать эту функцию в C #?
Чтобы упорядочить этот элемент массива, вам просто нужно сгладить его до 1500 элементов, которые он представляет
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct MyStruct {
/// byte[1500]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst=1500, ArraySubType=UnmanagedType.I1)]
public byte[] myVar;
}
Обязательно инициализируйте myVar
массив хоть вручную при использовании в C #
Других решений пока нет …