在C#C#我有一個數據類型byte[]
,其欲填在使用C++函數,它返回char*
獲取字節[]從在C++中的char *
的C++函數(在ImageData.dll
)
char* pMemoryBuffer = NULL;
char* LoadData(const char *fileName)
{
// processing pMemoryBuffer ...
return pMemoryBuffer;
}
導入本地的dll到C#:
[DllImport(".\\Modules_Native\\ImageData.dll", EntryPoint = "LoadData")]
private extern static byte[] LoadData(string fileName);
C#中的byte[]
數據
byte[] buffer = new byte[256*256];
buffer = LoadData("D:\\myPic.tif");
顯然它還沒有工作,但它提出了我想要做的想法。所以我想知道如何做這項工作,以及做到這一點的正確方法是什麼。非常感謝您的教育。
它不知道C#數組必須多大。 – prq
查看線程中的更新。大小已初始化。 – Ono
你可以通過指定它的「不工作」來改善你的問題嗎?我不是下來的選民,但這可能是原因。 – jmstoker