看板 C_and_CPP 關於我們 聯絡資訊
VC2008 程式大概長這樣 extern "C" _declspec(dllexport) BSTR __stdcall ToServer1(const char *str); { CString x; x = "aaaa"; Return SysallocString((BSTR)x.GetString()); } vb去呼叫 可以呼叫 但有一些問題想請教各位 vb是用 test$ = ToServer1("test");接 1 不知為啥咩 有時候 後面會出現亂碼 我VC字元集 未設定 用 x.AllocSysString() 會只回一個字元 有想過用 SysallocStringLen 但CString的長度取出來都是錯的 還在想要如何處理 2 因為是直接Return SysallocString 所以該如何去free它呢 希望有人可以給我一個方向 感恩 -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 180.177.162.16
freaky:(ByVal str As String) 02/18 02:49
freaky:要用x.AllocSysString();才對 02/18 02:50
freaky:VB會幫你free test 02/18 02:54
clv:x.AllocSysString()會只有一個字節 我用SysallocStringByteLen 02/18 23:22