1. 程式人生 > >C#除錯C++DLL的總結

C#除錯C++DLL的總結

C#程式除錯C++DLL的總結

在工作中遇到了C#程式呼叫C++動態連結庫的問題,因為有錯所以必須要除錯一下才方便解決,但現在有個問題,就是如果呼叫C++DLL,除錯時跟不進去DLL的原始碼,怎麼辦呢?

C#是在託管平臺上的,而C++DLL是在非託管平臺上的。方法看以下幾點:

首先:在C#程式的解決方案上右鍵“屬性”->“除錯”->勾選“啟用非託管程式碼除錯”。

其次:在“屬性”->“除錯”->“啟動選項”->“工作目錄”下,點選瀏覽按鈕,在彈出的選擇資料夾對話方塊中,指定C++DLL的生成目錄,可以將DLL拷貝到C#程式的生成目錄,然後指定C#自己的生成目錄。

然後:這點很重要,請保證C++的DLL是使用DEBUG生成的,Release生成的DLL不好除錯,會出現莫名的問題,不方便Debug。

最後:Debug執行C#程式,下斷點除錯你要Debug的地方即可。