Visual Studio 2010
動態鏈接庫 (DLL) 是作為共享函數庫的可執行文件。 動態鏈接提供了一種方法,使進程可以調用不屬於其可執行代碼的函數。 函數的可執行代碼位於一個 DLL 中,該 DLL 包含一個或多個已被編譯、鏈接並與使用它們的進程分開存儲的函數。 DLL 還有助於共享數據和資源。 多個應用程序可同時訪問內存中單個 DLL 副本的內容。
動態鏈接與靜態鏈接的不同之處在於:動態鏈接允許可執行模塊(.dll 文件或 .exe 文件)僅包含在運行時定位 DLL 函數的可執行代碼所需的信息。 在靜態鏈接中,鏈接器從靜態鏈接庫獲取所有被引用的函數,並將庫同代碼一起放到可執行文件中。
使用動態鏈接代替靜態鏈接有若干優點。 DLL 節省內存,減少交換操作,節省磁盤空間,更易於升級,提供售后支持,提供擴展 MFC 庫類的機制,支持多語言程序,並使國際版本的創建輕松完成。
下列主題提供有關對 DLL 編程的詳細信息。