1、調試dll的概述
由于dll本身是不可執行的,所以給開發和調試工作帶來了一定得難度,在VC++中如何調試dll程序呢?提供了兩種解決辦法
2、調試dll的技巧
打開應用程序的工程,選擇【Project】—>【Settings】菜單命令,在彈出對話框的“Debug”標簽下,“Category”選擇“General”,在“Program Arguments”中指定應用程序命令行參數。“Category”選擇“Additional dlls”,輸入調試的dll文件,如果使用遠程調試,要給出完整的網絡路徑。這個dll必須編譯成Debug版本的程序,包含有調試信息。這樣盡管dll源不是這個工程的組成部分,也可以在應用程序和dll的源程序中設置斷點。同時使用應用程序的工程來調用dll
在同一個工程區內打開dll和應用程序,這樣就要求把dll程序的工程添加到應用程序的工作區中。為了能夠調試dll程序,兩個工程都是用相同版本的Debug。在【Project】—>【Settings】對話框的“Link”標簽下選中“Generate debug info”。在【Project】—>【Settings】對話框的“Debug”標簽下,“Category”選擇“Additional DLLs”,將要調試的dll文件加入其中。同時,在【Project】—>【Settings】對話框中選擇應用程序的工程依賴于dll的工程,在dll程序調用時,編譯用戶應用程序,可以根據文件新舊比較把dll的工程也編譯連接。dll工程調用后,編譯連接生成新版本調試信息,為了操作方便可以在dll工程的“Project Settings”對話框中的“Post-Build Step”標簽下加上將編譯好的dll復制到應用程序訪問到的目錄的一個命令。每編譯一次,就要執行一次這個命令,將最新生成的dll文件提交給應用程序是用。
通過上面的設置就可以通過應用程序來對dll程序進行調試了,在調試過程中,可以從應用程序單步跟蹤到dll工程中,在dll中設置斷點,在應用程序中調用dll,執行到此時,也會中斷,從而達到了調試的目的。