我是微軟世界的新手。 我有很多的問題,試圖從c#傳遞一個簡單的字符串到dll/C++ 我已經閱讀了大量的文章和文檔,但問題是一樣的。從c#到C++編組字符串
C++代碼
extern "C" __declspec(dllexport) int Init(long l , char* url);
C#代碼
[DllImport("MCRenderer.dll", CharSet = CharSet.Ansi, SetLastError = true, ExactSpelling = false)]
public static extern int Init(long a, StringBuilder url);
Init(hndl.ToInt64(), str);
是什麼haeppen,長期價值傳遞正確而字符串參數是
0x00000000 <Bad Ptr>
你可以幫我...蔭真的很困惑 謝謝!! AG
我做了一個快速查找 - StringBuilder的是對於Unicode有用的,所以,可能是它的存在的原因。 – Tesserex 2011-01-19 15:16:08
但如果你把一個字符串它工作? – 2011-01-19 15:18:03