- 4
- 0
- 约 9页
- 2017-05-12 发布于天津
- 举报
ImplicitLinking與ExplicitLinking.ppt
Implicit Linking與Explicit Linking 4.17 王俊富 Implicit Linking(隱式聯結) Implicitly Link(隱式聯結)又稱靜態載入,所謂靜態載入是指程式在聯結時期即與DLLs所對應的import libraries做靜態鏈結,於是可執行檔中便對所有的DLL函式都有一份重定位表格(relocation table)和待修正記錄(fixup record)。當程式被Windows 載入器載入記憶體中,載入器會自動修正所有的fixup records,而這個fixup records 就是記錄由DLL中所有輸出資源的正確位址,經過這樣的程序動態聯結便順利產生。也就是說,程式開始執行時,會用靜態載入方式所使用的DLLs都載入到行程的記憶體裡。 靜態載入方式的優點 1、靜態載入方式所使用到的這個DLL會在應用程式執行時載入,然後就可以呼叫出所有由DLL中匯出的函式,就好像是包含在程式中一般。 2、動作較為簡單,載入的方法由編譯器負責處理,不須動腦筋。 靜態載入方式的缺點 1、當這個程式靜態載入方式所使用到的這個DLL不存在時,這個程式在開始時就出現無法找到DLL的訊息而導致應用程式無法執行。 2、編譯時需要加入額外的import library。 3、若是要載入的DLLs一多,載入應用程式的速度會變慢。 4、若遇到不同品
原创力文档

文档评论(0)