CtrIsValidHeapPointer(pUserData)、DLL、以及CString

在使用VC 6.0 做動態鏈接庫的時候,如果從exe主程序裏調用dll中的函數使用了CString類作爲參數,在函數結束的時候通常會遇到以下錯誤:

_CtrIsValidHeapPointer(pUserData)

dbgheap.c

Line:1044

原因在於CString類的析構方式使得對象在dll空間中析構時,會重複釋放,以致第二次釋放時出錯!

解決辦法:

使用LPCSTR類型傳遞參數

就OK!

發佈了79 篇原創文章 · 獲贊 9 · 訪問量 17萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章