句柄
句柄,是整個windows編程的基礎。一個句柄是指使用的一個唯一的整數值,即一個四字節長的數值,來標誌應用程序中的不同對象和同類對象中的不同的實例,諸如,一個窗口,按鈕,圖標,滾動條,輸出設備,控件或者文件等。應用程序能夠通過句柄訪問相應的對象的信息,但是句柄不是一個指針,程序不能利用句柄來直接閱讀文件中的信息。如果句柄不用在I/O文件中,它是毫無用處的。 句柄是windows用來標誌應用程序中建立的或是使用的唯一整數,windows使用了大量的句柄來標誌很多對象。
在程序設計中,句柄是一種特殊的智能指針 。當一個應用程序要引用其他係統(如數據庫、操作係統)所管理的內存塊或對象時,就要使用句柄。
句柄與普通指針的區別在於,指針包含的是引用對象的內存地址,而句柄則是由係統所管理的引用標識,該標識可以被係統重新定位到一個內存地址上。這種間接訪問對象的模式增強了係統對引用對象的控製。
WINDOWS程序中並不是用物理地址來標識一個內存塊,文件,任務或動態裝入模塊的。相反,WINDOWS API給這些項目分配確定的句柄,並將句柄返回給應用程序,然後通過句柄來進行操作。
句柄是WINDOWS用來標識被應用程序所建立或使用的對象的唯一整數,WINDOWS使用各種各樣的句柄標識諸如應用程序實例,窗口,控件,位圖,GDI對象等等。WINDOWS句柄有點象C語言中的文件句柄。
句柄是一個標識符,是拿來標識對象或者項目的。應用程序幾乎總是通過調用一個WINDOWS函數來獲得一個句柄,之後其他的WINDOWS函數就可以使用該句柄,以引用相應的對象。
最後更新:2017-04-03 16:48:54
上一篇:
Linux中關機命令詳解
下一篇:
Nginx + PHP + mysql CGI的一個可能的安全漏洞
從洞穴壁畫說起,信息可視化圖表發展的迷人曆史
發布swf-util 0.01
重磅 | 阿裏推出多智能體雙向協調網絡BicNet,玩《星際爭霸》堪比人類
PostgreSQL 聚合表達式 FILTER , order , within group 用法
海量存儲之十八--一致性和高可用專題
Oracle中的記錄(Record)
【雲棲大會】Elastic與阿裏雲達成合作夥伴關係 提供“阿裏雲Elasticsearch”的新服務
git hub update command memo
MYSQL · 新特性 · MySQL 8.0對Parser所做的改進
用更少的錢看更清晰的視頻——詳談阿裏雲窄帶高清