問題,代碼如圖片所示
uj5u.com熱心網友回復:
CString的記憶體空間是預分配的,如果空間不夠,會重新分配記憶體空間。既然version的大小已定,sVersion在傳入前是不是可以指定下大小呢。uj5u.com熱心網友回復:
指定不了。。上層不是我來決定。uj5u.com熱心網友回復:
DLL介面引數使用的CString類物件?uj5u.com熱心網友回復:
DLL匯出的函式,如果不是同一個編譯器盡量用基本的資料型別,比如char*,WCHAR*等,CString,string每個編譯器實作是不一樣的!那么他們的記憶體結構就不一樣,崩潰是早晚的事情uj5u.com熱心網友回復:
你說的這個都知道,說了那介面是不能動的,是別人定死的uj5u.com熱心網友回復:
sVersion=Versionch;uj5u.com熱心網友回復:
這是不行的uj5u.com熱心網友回復:
CString( LPCSTR lpsz );throw( CMemoryException );
什么 “不行的”?
uj5u.com熱心網友回復:
VC6做的DLL, 如果不能修改DLL, 那可以試試把工程用VC6編譯, 一般相同版本的編譯器編譯的相互間的兼容性會比較好或者VC6再做一個DLL 重新封裝下原來的DLL
uj5u.com熱心網友回復:
這層必須用2010,就是說必須用2010調vc6生成的,上層又必須是vc6調這層2010的,不能變更,哈哈uj5u.com熱心網友回復:
學習 以前寫的貌似圖省事 都沒注意uj5u.com熱心網友回復:
這樣寫的前提是同一個編譯器,所以我們如果要這么寫,一定是帶原始碼而不僅僅是一個DLL
uj5u.com熱心網友回復:
參考下面,看看對你是否有幫助:http://www.cnblogs.com/cnmyp/archive/2011/04/03/2004177.html
轉載請註明出處,本文鏈接:https://www.uj5u.com/gongcheng/54385.html
標籤:基礎類
上一篇:【分享原始碼】VC++實作的軟體自動更新模塊Updater
下一篇:新手求助,串列內容顯示到編輯框
