DLL工程除錯方法

2021-06-29 03:04:31 字數 761 閱讀 9557

最近的專案比較大,歷史版本比較多,由於許可權原因,有些工程**無法獲得,所以自己寫的dll工程如果只用自己的測試程式,難以完成所有case的測試。經過查閱資料,vs2010dll工程的除錯方法如下。

1.右擊工程名,properties->configuration properties->debugging

2.debug to  launch 選項:如果是本地除錯,選擇 local windows debugger 如果是遠端除錯,選擇romote windows debug 其他幾個選項沒有用過。

3.command選項:選擇呼叫當前dll的exe程式路徑,如:f:\projectslm\metalsupport\debug\test_support.exe

4.command argument:有些文章說要把當前dll匯出的函式寫進去,測試的時候發現沒有必要,這個引數是空的也可以。

5.attach選項:如果呼叫dll的程式正在執行,設為yes,如果不是,設為no

6.將dll工程set as start project,在工程中設定斷點,就可以除錯了。

如果需要除錯動態庫(跟蹤進動動庫的**),就一定要將動態庫的工程屬性中的linker->debugging->generate debug info選項設定為yes。

此問題的發現是在實踐中有動態庫呼叫動態庫的場景中發現,其呼叫示意圖如下:exe->dll1->dll2,在dll1中設定斷點可進入,而在dll2中設定斷點不進入(在dll1中想跟蹤進dll2中也不行),當將dll2的除錯屬性改為yes時一切都可以除錯。

vs除錯dll工程

dll本身是沒法執行的,必須在其它工程呼叫dll時候才會執行。所以,除錯dll首先要將呼叫dll的工程和dll工程聯絡起來。解決方案中新增dll工程 現在dll 和 應用程式兩個工程就都在乙個解決方案裡了 這時要對dll工程作些設定。配置屬性 常規 輸出目錄設定為 應用程式的生成目錄 這樣一來編譯的...

VC2010除錯DLL工程的方法

如果有用於建立可執行檔案的專案,則從該專案開始除錯。然後可以開啟 dll 的原始檔,並在該檔案中設定斷點,即使它不是用於建立可執行檔案的專案的一部分。如果從建立 dll 的專案開始除錯,則必須指定在除錯 dll 時要使用的可執行檔案。為除錯會話指定可執行檔案 在 解決方案資源管理器 中,選擇用於建立...

android 工程除錯方法

廢話不多說,直接來幾種除錯模式,給大家,看看你用過沒!第一種,也就是寫乙個全域性的log方法,並傳乙個布林引數,true 列印 false 不列印。這樣發布apk 的時候,所有的涉及到log的部分都可以去掉,相信很多人都這麼用的。第二種,是debug。這也是在工程感覺資料不對,或者 沒有執行的時候操...