HMODULE,HINSTANCE,HANDLE,概念

Handle
       是代表系統的內核對象,如文件句柄,線程句柄,進程句柄。
       在Windows環境中,句柄是用來標識項目的,這些項目包括:模塊(module)、任務(task)、實例 (instance)、文件 (file)、內存塊(block of memory)、菜單(menu)、控制(control)、字體(font)、資源(resource),包 括圖標(icon),光標 (cursor),字符串(string)等、GDI對象(GDI object),包括位圖(bitmap),畫刷 (brush),元文件(metafile),調色板(palette),畫筆(pen),區域 (region),以及設備描述表 (device context)。 
        WONDOWS系統對內核對象以鏈表的形式進行管理,載入到內存中的每一個內核對象都有一個線性地址,同時相對系統來說,在串列中有一個索引位置,這個索 引位置就是內核對象的handle。
       句柄是WONDOWS用來標識被應用程序所建立或使用的對象的唯一整數,WINDOWS使用各種各樣的句柄標識諸如應用程序實例,窗口,控制,位 圖,GDI對象等等。
       句柄只有當唯一的確定了一個項目的時候,它纔開始有意義。句柄對應着項目表中的一項,只是一個索引值,不是物理地址,應用程序還不能直接存取這塊內存,而 只有WINDOWS本身才能直接存取這個表,應用程序只能通過API函數來處理不同的句柄。

HMODULE
是代表應用程序載入的模塊,win32系統下通常 是被載入模塊的線性地址。

HINSTANCE
 在win32下與HMODULE是相同的東西,在Win32下還存在主要是因爲Win16 程序使用HINSTANCE來區別任務,等同於 HMODULE。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章