動態連結庫(dll)和圖書館(lib)的區別

庫是可用於開發應用程式的資源集合。庫通常由子程式、函式、類、值和型別組成。在連結過程中(通常由連結器完成),庫和可執行檔案相互引用。根據子程式載入到目標應用程式的時間,庫檔案分為靜態庫和動態庫。因此,LIB檔案是靜態連結庫,DLL檔案是動態連結庫。...

DLL與LIB

庫是可用於開發應用程序的資源集合。庫通常由子程序、函數、類、值和類型組成。在鏈接過程中(通常由鏈接器完成),庫和可執行文件相互引用。根據子程序加載到目標應用程序的時間,庫文件分為靜態庫和動態庫。因此,LIB文件是靜態鏈接庫,DLL文件是動態鏈接庫。

什麼是DLL?

動態鏈接庫(通常稱為DLL)是由Microsoft開發的共享庫實現。它使用.dll、.ocx或.drv擴展名,它們在Microsoft Windows和OS/2操作系統中使用。dll由常規dll文件使用。ocx擴展名由包含ActiveX控件的庫使用,.drv擴展名由舊系統驅動程序文件使用。DLL文件格式與Windows EXE文件相同(32位/64位Windows上的可移植可執行文件,16位Windows上的新可執行文件)。因此,任何代碼、數據和資源的組合都可以包含在DLL文件中(就像在EXE文件中一樣)。實際上,具有DLL文件格式的數據文件稱為資源DLL。圖標庫(擴展名為.icl)和字體文件(擴展名為.fon和.fot)是資源DLL的示例。

稱為secti***的組件組成一個DLL,每個節都有自己的屬性,比如只讀/可寫和可執行/不可執行。代碼段是可執行的,而數據段是不可執行的。代碼部分是共享的,數據部分是私有的。這意味著使用DLL的所有進程將使用相同的代碼副本,而每個進程都將有自己的數據副本。Windows的主要動態庫是kernel32.dll,它包含Windows上的基本函數(與文件和內存相關的功能)。COM(Component Object Model)是DLL對OOP(面向對象編程)的擴展。傳統的DLL比COM文件更容易使用。

什麼是LIB?

LIB文件是靜態庫(也稱為靜態鏈接庫)。LIB文件包含子例程、外部函數和變量的集合。LIB文件在編譯時解析(與運行時相反)。實際上是複製到應用程序中的目標代碼。編譯器、鏈接器或綁定器將執行此解析並生成一個目標文件和一個可執行文件。此過程稱為靜態構建過程。

DLL和LIB有什麼區別?

  • 發表於 2020-11-03 13:15
  • 閱讀 ( 17 )
  • 分類:科技

你可能感興趣的文章

業務需求(business requirements)和功能要求(functional requirements)的區別

...還應註明遲交的費用。圖書館管理系統還應檢視會員詳情和圖書詳情。這些是圖書館管理系統的一些功能要求。醫院管理系統應新增、更新、刪除患者和醫生的詳細資訊。它應該安排、重新安排和刪除約會。它應該產生賬單。這...

  • 發佈於 2020-10-18 18:16
  • 閲讀 ( 60 )

系統呼叫(system call)和圖書館呼叫(library call)的區別

關鍵區別-系統呼叫與庫呼叫 系統呼叫和庫呼叫與計算機的作業系統有關。計算機可以在兩種模式下執行,即使用者模式和核心模式。系統呼叫和庫呼叫的關鍵區別在於,系統呼叫是核心提供的進入核心模式訪問硬體資源的函...

  • 發佈於 2020-10-20 00:18
  • 閲讀 ( 48 )

最常見的5個windows錯誤及其修復方法

... 動態連結庫(DLL)是一個共享檔案,許多程式可以呼叫它來執行某些操作。這些都內建在Windows中,這樣每個軟體都不必建立自己的方法,比如說,列印測試頁。無論使用...

  • 發佈於 2021-03-15 00:38
  • 閲讀 ( 48 )

6個預設的windows檔案和資料夾,您不應觸控

...dows9x版本成為難題的問題。通俗的術語“DLL地獄”描述了動態連結庫(DLL)檔案衝突、重複或中斷時出現的問題。 ...

  • 發佈於 2021-03-15 10:38
  • 閲讀 ( 49 )

葡萄酒程式不起作用?嘗試以下步驟

...來執行Windows軟體。在Microsoft世界中,這些元件稱為DLL(動態連結庫)。它們提供了其他程式賴以工作的額外特性和功能。一個例子是d3d8.dll,它使程式能夠訪問微軟的directx8遊戲功能。 ...

  • 發佈於 2021-03-16 10:20
  • 閲讀 ( 49 )

WindowsSystem32目錄:它是什麼以及為什麼不能刪除它

... DLL(動態連結庫)檔案允許程式訪問部分視窗並執行標準任務。例如,一個DLL檔案可能允許計算機播放音訊,而另一個可以啟用自動Windows更新。許多DLL在您啟動計算機後立即...

  • 發佈於 2021-03-20 03:47
  • 閲讀 ( 49 )

如何修復windows中dll檔案丟失的錯誤

... 什麼是動態連結庫(a dll)? ...

  • 發佈於 2021-03-26 11:29
  • 閲讀 ( 62 )

如何在windows10中管理winsxs資料夾

...DLL地獄”問題而建立的。簡單地說,它涉及任何程式更改動態連結庫(DLL)檔案以影響需要使用相同DLL的其他應用程式的關鍵功能的例項。 ...

  • 發佈於 2021-03-30 19:20
  • 閲讀 ( 48 )

如何從linux命令列檢視二進位制檔案

...路徑(第一個不包含): linux作業系統-vdso.so公司:虛擬動態共享物件(VDSO)是一種核心機制,允許使用者空間二進位制檔案訪問一組核心空間例程。這避免了從使用者核心模式切換上下文的開銷。VDSO共享物件遵循可執行和可...

  • 發佈於 2021-04-02 04:41
  • 閲讀 ( 47 )

什麼是windows上的程式碼注入?

...注入通常也稱為DLL注入,因為注入的程式碼通常是以DLL(動態連結庫)檔案的形式出現的。然而,應用程式也可以將其他型別的非dll程式碼注入到程序中。 程式碼注入的用途是什麼 程式碼注入用於在Windows上完成各種技巧和功...

  • 發佈於 2021-04-05 00:45
  • 閲讀 ( 138 )
xus8295
xus8295

0 篇文章

作家榜

  1. admin 0 文章
  2. 孫小欽 0 文章
  3. JVhby0 0 文章
  4. fvpvzrr 0 文章
  5. 0sus8kksc 0 文章
  6. zsfn1903 0 文章
  7. w91395898 0 文章
  8. SuperQueen123 0 文章

相關推薦