電子通信論文編號:TX128 字數:12484,頁數:31
目 錄 目 錄 I 1 簡介 1 2 基本概念 1 2.1 靜態連接 1 2.2 動態連接 1 2.3 靜態連接庫和Windows DLL的區別 1 2.4 Window應用程序與DLL的區別 2 2.4.1 定義 2 2.4.2 應用程序和DLL的不同 3 3 動態連接庫的優點 4 4 動態連接庫的不足 4 5 動態連接庫的實現 5 5.1 實現一個32位的DLL 5 5.2 建立靜態連接庫 6 5.3 建立動態連接庫 9 5.3.1 隱式動態連接 9 5.3.2 顯式動態連接 18 5.3.3 DLL入口點 20 6 應用程序共享DLL數據 25 6.1 使用共享數據段 25 6.2 使用內存映像文件 27 7 DLL基址沖突 29 8 結論 30 9 參考資料 30
簡介 本文是根據“MSDN”中的相關資料整理,其目的在于介紹動態連接庫(Dynamic Link Library―DLL)的基本概念和為Microsoft Windows應用程序編寫DLL的機制。本論題僅限于使用Visual C++6.0編寫的32位Windows應用程序。 基本概念 靜態連接 象C,Pascal和FORTRAN這樣的高級編程語言,一個程序的源代碼要經過編譯、與不同的庫連接,然后生成可執行文件。這些庫是包含預編譯函數的目標文件,而這些預編譯函數能用于完成一般的任務,如計算一個數據的平方根或分配內存。當這些庫函數被連接到一個應用程序時,它們就變成應用程序可執行文件的一個固定部分。所有對于庫函數的調用都在連接時解析所以稱為靜態連接。 動態連接 動態連接提供了一種在運行時將應用程序連接到庫的機制。庫駐留在它們自己的可執行文件中,并不象靜態連接那樣將代碼復制到應用程序的可執行文件中。這些庫被稱為動態連接庫(DLL),以強調它們是在應用程序裝載和執行時連接到應用程序,而不是在連接時連接到應用程序的。當應用程序使用一個DLL時,操作系統將該DLL裝載到內存,解析DLL中函數的引用,使它們能被應用程序調用,然后在動態連接庫不再需要時,操作系統將其從內存中卸載。這種動態連接機制可由應用程序顯式的執行或由操作系統隱式的執行。
本站部分文章來自網絡,如發現侵犯了您的權益,請聯系指出,本站及時確認刪除 E-mail:349991040@qq.com
論文格式網(www.donglienglish.cn--論文格式網拼音首字母組合)提供電子通信論文畢業論文格式,論文格式范文,畢業論文范文