dll除錯有以下3種方法
1.同時使用dll和應用程式的工程來除錯
將2個工程放在乙個workspace裡,可以使用project/insert project into wordspace...彈出對話方塊選擇,也可以在開啟1個工程的情況下,直接使用file/new...選擇project建立另乙個新工程,選中,add to current workspace
為了除錯,2個工程都使用win32 debug(或者 unicode debug)版本,在project/settings/link 都選中generate debug info
如果是隱式鏈結dll,需要從dll中獲得匯出資訊的標頭檔案和編譯生成的導入庫lib檔案。標頭檔案用#include加入,project/add to project/files.
..加入lib檔案
2.使用應用程式的工程來除錯dll
project/settings/debug/category選擇additional dlls,新增要除錯的dll檔案,如果是遠端除錯(build/debugger remote connection...中設定),必須給出完整的網路路徑。
這個dll必須是編譯成win32 debug(或 unicode debug)版本的,包含有除錯資訊,這樣儘管dll的源程式不是這個工程的組成部分,也可以在應用程式和dll中設定斷點。
3.使用dll的工程來除錯dll
開啟dll工程,project/settings/debug/category選擇general,為這個dll指定1個可執行程式,可以就是另外開發的的使用該dll的使用者程式。
具體除錯過程中,可以從應用程式單步跟蹤到dll中,在dll中設定斷點,在應用程式中呼叫dll中的程式,執行到這個斷點時,就會中斷,便於檢查此時dll的狀態。通過改變、設定應用程式執行環境和不同執行路徑,為dll程式除錯提供多種檢查方式。
我的方法:
兩個·工程 乙個dll 乙個exe程式
把兩個整在乙個工程裡,exe程式設定dll
在程式中呼叫這個dll 用絕對路徑loadlibrarya("c:\\***x\\***\\***x\\***.dll");
在exe dll中下斷 即可除錯了
今天偶然發現新大路了 除錯時直接 在dllmain下 面來個__asm int 3 ; 就能附加除錯了!
例子:
IDEA如何進行遠端除錯
測試題外話 win10 idea2021.1.4 centos7 tomcat9.0.43 我對springboot專案打了war包,有版本依賴 spring boot starter parent 2.3.4.release spring boot starter web tomcat embed...
ipad上如何進行頁面除錯?
以前用ios5的時候ipad上還可以通過safari中的開發人員工具裡面開啟控制台,檢視console.log的日誌列印資訊來進行除錯。但是從公升級為ios6後就找不到這項了,這裡可以借助與firebug工具來進行頁面除錯。在head裡面加入 然後再html中加入debug true,就可以在開啟頁...
vs下如何進行遠端除錯
當需要在客戶機上進行軟體除錯時,如果客戶機上沒有安裝程式設計環境,這時就需要使用遠端除錯功能。vs對遠端除錯提供了強大的支援,vs的安裝目錄下有乙個remote debugger的資料夾,如 d program files x86 microsoft visual studio 14.0 commo...