為了全面地了解dll如何執行,以及開發者和系統如何正確地使用dll,我們首先來研究一下dll的基本執行機理。下圖概括了dll的各構件是如何鏈結在一起的。
現在,我們關注的焦點是可執行模組和dll模組之間是如何進行隱式鏈結的。隱式鏈結是目前最為常用的鏈結型別。windows同時支援顯示鏈結(顯示鏈結將在第20章加以討論)。
在下圖中可以看到,當乙個模組(例如乙個可執行檔案)使用dll中的函式和變數時,會有若干個檔案和構件在其中發揮作用。為簡化討論,將「可執行模組」看作是從dll中匯入的函式和變數,而將「dll模組」看做向乙個可執行模組匯出函式和變數。然而,需要注意的是,dll模組能夠(而且經常)匯入包含在其它dll模組中的函式和變數。
Windows 動態鏈結庫程式設計
windows 動態鏈結庫程式設計 1 介紹 windows作業系統是應用最關的作業系統,因此動態鏈結庫也為程式設計師所熟悉,即使對於普通的使用者來說,很多時候也會碰到.dll結尾的檔案,這就是動態鏈結庫檔案。windows下的動態鏈結庫可以通過參考標頭檔案和.lib庫檔案進行編譯,從而使得動態鏈結...
Windows核心程式設計
內容簡介 這是一本經典的windows核心程式設計指南,從第1版到第5版,引領著數十萬程式設計師走入windows開發陣營,培養了大批精英。作為windows開發人員的必備參考,本書是為打算理解windows的c和c 程式設計師精心設計的。第5版全面覆蓋windows xp,windows vist...
WINDOWS核心程式設計 核心物件
今天想把看的第三章的心得寫下來。這章主要介紹了核心物件。在windows中,核心物件是由作業系統來管理,儘管使用者能夠建立它,但是在建立之後,使用者對該核心物件的操作都是委託給作業系統。通常使用者建立和使用的物件分為 使用者物件 如 hicon createicon prama gdi物件函式以及核...