我手上有一個C++寫的dll
現在在C#寫的程式內使用這個dll
在這個dll內有一個struct
typedef struct _A
{
WCHAR buf[64];
DWORD index;
} A;
會被當成function的參數傳遞
int funA(A *a)
{
a.buf...;
index = ...;
}
現在我想在C#內叫用funA
[DllImport("Mydll.dll", CallingConvention = CallingConvention.StdCall, CharSet
= CharSet.Unicode)]
public static extern int funA(IntPtr a);
有先確認過dll確實有值在buf裡面
但是不管怎樣都沒有辦法得到buf的內容
在猜想會不會是memory沒有正確傳遞?
想請教一下該如何才能正確將dll傳的值抓出來呢?