基本流程還是一樣的,只不過除錯動態庫的話,除了需要動態庫本身外,還需要呼叫該動態庫的執行程式。這裡假設要除錯的動態庫為testdll.dll,其中匯出乙個函式int add(int a, int b);在可執行程式testcsdn.exe中會呼叫testdll中的add函式。
除錯步驟如下:
1.在編譯完動態庫testdll.dll和可執行程式testcsdn.exe之後,將這倆複製到目標機器上,比如目標機器的d:/debugeasy/remotedebugdll目錄下。
2.設定好本機和目標機器的遠端除錯選項
參見前一篇blog: vc++6.0除錯篇:遠端除錯
3.在本機開啟testdll工程,在build --> project and setting選單中作設定:
上面是本機中testcsdn.exe所在的位置,下面是遠端目標機器上程式所在的位置。注意,這裡都是設定的可執行檔案的名字,而不是我們要除錯的動態庫的名字。
4.點ok後,在add函式中打個斷點,然後按f5開始除錯。會提示要定位動態庫位置,第乙個一般是ntdll.dll,如圖:
如果我們是除錯exe,那麼去掉"try to locate other dlls"選項,點ok就行了。但是我們這次的目標是除錯testdll.dll,所以請有點耐心,直接點ok。可能有很多,直到看到你想要的:
看到沒,提示要目標機器上的testdll.dll檔案在本機中的位置,點browse,選中本機中的位置:
找到本機中的位置後,點"開啟",剩下的dll就都忽略吧,資訊已經足夠了。f5之~
6.守得雲開見月明:
斷點生效了噢,都能看到變數a的值是100了。
嗯,過程應該比較清楚了吧,bless~~
VC 6 0除錯篇 遠端除錯續 DLL篇
基本流程還是一樣的,只不過除錯動態庫的話,除了需要動態庫本身外,還需要呼叫該動態庫的執行程式。這裡假設要除錯的動態庫為testdll.dll,其中匯出乙個函式int add int a,int b 在可執行程式testcsdn.exe中會呼叫testdll中的add函式。除錯步驟如下 1.在編譯完動...
VC 6 0除錯篇 遠端除錯續 DLL篇
聞香止步 店 飾品 木雕系列 檀木 黃楊木 桃木髮簪 樟木壁掛 佛珠 朋友,有空來看看,喜歡的朋友請收藏 基本流程還是一樣的,只不過除錯動態庫的話,除了需要動態庫本身外,還需要呼叫該動態庫的執行程式。這裡假設要除錯的動態庫為testdll.dll,其 中匯出乙個函式int add int a,int...
VC2005除錯 DLL除錯, 遠端除錯
vc2005 dll除錯 如果exe檔案和dll一樣,都處於你乙個開發的狀態,那麼可以放在同乙個解決方案中,直接除錯 但是,有時候,我們開發的dll,是給其他人使用的,或者,你此時不想除錯exe 這時候,可以在dll工程選項中,選擇 除錯 選項卡 工作目錄 填入exe檔案所在的目錄 比如d test...