0
在我的C/C++庫,我有一個功能,這樣的原型:如何在C#和未託管的C++庫之間傳遞參考指針?
long myFunction(const wchar_t*& pszOutput)
該DLL分配的pszOutput內存,並釋放它。
如何從C#中調用此函數?
我已經嘗試了很多下面一行的變化(帶出來,用的MarshalAs,...),但在退出時myFunction的我總是得到一個崩潰:
[DllImport("mydll.dll", EntryPoint = "myFunction", CallingConvention = CallingConvention.StdCall, CharSet = CharSet.Unicode)]
private static extern long myFunction(ref string szOutput);
有誰知道,怎麼樣要做到這一點?
關於在C++/C#中的很長時間,我只是輸入了一個「虛擬」的代碼和平,而不是真正的;-)。 Thx很多答案。我已經看到了你提到的例子,但簡單地希望,一個「更容易」的解決方案可以存在,並且如果可能的話,沒有任何返回字符串的副本。 – Fred