[英]How to marshal an array structure containing a matrix of char
基於以下C ++標頭內容:
typedef struct {
char myVar[30][50];
}MyStruct;
extern "C" int WINAPI MyFunction(MyStruct *Configuration,int *CfgSize);
我在互聯網上尋找了許多示例,但是沒有一個示例使用struct數組中的矩陣變量作為參數。
有人可以告訴我如何在C#中使用此函數嗎?
為了封送此數組成員,您只需要將其展平為代表的1500個元素
[StructLayoutAttribute(LayoutKind.Sequential)]
public struct MyStruct {
/// byte[1500]
[MarshalAsAttribute(UnmanagedType.ByValArray, SizeConst=1500, ArraySubType=UnmanagedType.I1)]
public byte[] myVar;
}
在C#中使用時,請務必手動初始化myVar
數組
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.