1. 程式人生 > >動態連結庫(DLL)總結---DLL三種除錯(8)

動態連結庫(DLL)總結---DLL三種除錯(8)

DLL有三種除錯方法:

       方法1:

                如果動態連結庫是自己編寫的,並且測試程式碼也是自己編寫的,那麼此時我們可以將動態連結庫和測試程式碼的工程建立在一起,在除錯測試程式碼的時候,可以直接呼叫動態連結庫中的程式碼。

我們在測試連結庫專案中的100行打個斷點,當執行到此處的時候,按F11就會進入到動態連結庫專案中的原始碼中,就可以進行除錯了。

  方法2:

如果動態連結庫是自己編寫的,而呼叫動態連結庫的程式不是自己編寫的,那麼我們需要設定動態連結庫中的專案屬性,啟動呼叫動態連結庫的程式,形成連結之後,在除錯的時候才可以數你在動態連結庫中除錯。如下圖:

                

在專案屬性的除錯中設定完成對應要啟動的exe之後,設定dll為啟動專案,即可以執行除錯。

方法3:

如果動態連結庫不是自己編寫,程式也不是自己編寫,那麼這個時候只能通過Ollydbg或者其他除錯工具除錯了。使用OD除錯dll,需要保證OD目錄下有loaddll.exe檔案。

需要三個步驟如下:

1)我們可以先借助LordPE獲取到匯出表中的方法的RVA地址


2)藉助OD獲取到專案的基址


3)通過基址和RVA計算出來VA,就找到函數了