深入理解DLL文件
1、LIB與DLL文件的區別
????? DLL是一個完整的程序,稱為“動態鏈接庫”,DLL中包含的主要有三塊內容:1.全部變量 2.函數接口 3.資源;DLL中有一個函數導出表,其中每一項都是一個函數名稱。通過一定的方式連接這些函數接口,來調用這些函數的功能。
dll有兩種加載方式:隱式鏈接和顯式鏈接。
dll一般會有對應的導入庫,方便程序進行隱式鏈接加載,否則就需要自己LoadLibary調入DLL文件,然后再GetProcAddress獲得對應函數了(即顯示鏈接加載dll方式)。有了導入庫,你只需要鏈接導入庫后按照頭文件函數接口的聲明調用函數就可以了。
???? DLL中的代碼在程序主動調用的時候才會被調入內存(DLL沒有自己的內存,它會被分配到調用程序的內存區域中)。
???? 參考 http://www.reader8.cn/jiaocheng/20131013/1876826.html
?
?
轉載于:https://www.cnblogs.com/haoyuanyuan/p/3793036.html
總結
- 上一篇: 介绍 Java 的内存泄漏
- 下一篇: Java Web系统经常使用的第三方接口