1. 程式人生 > >動態連結庫(dll)學習筆記

動態連結庫(dll)學習筆記

dll和lib的區別:如果採用靜態連結庫,則無論你願不願意,lib中的指令都被直接包含在最終生成的EXE檔案中了。但是若使用DLL,該DLL不必被包含在最終EXE檔案中,EXE檔案執行時可以“動態”地引用和解除安裝這個與EXE獨立的DLL檔案。靜態連結庫和動態連結庫的另外一個區別在於靜態連結庫中不能再包含其他的動態連結庫或者靜態庫,而在動態連結庫中還可以再包含其他的動態或靜態連結庫。

dll的特點:只要遵循約定的DLL介面規範和呼叫方式,用各種語言編寫的DLL都可以相互呼叫

lib的特點:

(1)庫不是個怪物,編寫庫的程式和編寫一般的程式區別不大,只是庫不能單獨執行; (2)庫提供一些可以給別的程式呼叫的東東,別的程式要呼叫它必須以某種方式指明它要呼叫之。

庫的除錯與“執行”:將庫工程和應用工程(呼叫庫的工程)放置在同一VC工作區,只對應用工程進行除錯,在應用工程呼叫庫中函式的語句處設定斷點,執行後按下F11,這樣就單步進入了庫中的函式