欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

包含系統(tǒng)句柄windows的詞條

句柄是什么意思

句柄(handle),有兩種解釋

創(chuàng)新互聯(lián)建站專注于扎蘭屯網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠為您提供扎蘭屯營銷型網(wǎng)站建設(shè),扎蘭屯網(wǎng)站制作、扎蘭屯網(wǎng)頁設(shè)計、扎蘭屯網(wǎng)站官網(wǎng)定制、微信平臺小程序開發(fā)服務(wù),打造扎蘭屯網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供扎蘭屯網(wǎng)站排名全網(wǎng)營銷落地服務(wù)。

1,句柄是一種特殊的智能指針?。當(dāng)一個應(yīng)用程序要引用其他系統(tǒng)(如數(shù)據(jù)庫、操作系統(tǒng))所管理的內(nèi)存塊或?qū)ο髸r,就要使用句柄。

2,整個Windows編程的基礎(chǔ)。一個句柄是指使用的一個唯一的整數(shù)值,即一個4字節(jié)長的數(shù)值,來標(biāo)識應(yīng)用程序中的不同對象和同類中的不同的實(shí)例,諸如,一個窗口,按鈕,圖標(biāo),滾動條,輸出設(shè)備,控件或者文件等。

擴(kuò)展資料:

注意事項(xiàng):

1,內(nèi)核對象句柄,是用來標(biāo)識某個內(nèi)核對象的一個ID 同一個對象的該id對于每個進(jìn)程是不同的,具體如何實(shí)現(xiàn)是ms不公開的算法,以下是一個近似的,可能的算法。

2,進(jìn)程創(chuàng)建時,windows系統(tǒng)為進(jìn)程構(gòu)造了一個句柄表。

3,當(dāng)該進(jìn)程希望獲得一個內(nèi)核對象句柄或者創(chuàng)建一個內(nèi)核對象從而獲得該對象句柄時。

4,系統(tǒng)會將在句柄表中增加一個表項(xiàng),表項(xiàng)的內(nèi)容中存儲了指向目標(biāo)內(nèi)核對象的指針。

同時,系統(tǒng)返回這個表項(xiàng)在句柄表中的索引作為句柄。

參考資料:百度百科——句柄

什么是句柄?句柄有什么作用?

所謂句柄實(shí)際上是一個數(shù)據(jù),是一個Long

(整長型)的數(shù)據(jù)。

句柄是WONDOWS用來標(biāo)識被應(yīng)用程序所建立或使用的對象的唯一整數(shù),WINDOWS使用各種各樣的句柄標(biāo)識諸如應(yīng)用程序?qū)嵗翱?,控制,位圖,GDI對象等等。WINDOWS句柄有點(diǎn)象C語言中的文件句柄。

從上面的定義中的我們可以看到,句柄是一個標(biāo)識符,是拿來標(biāo)識對象或者項(xiàng)目的,它就象我們的姓名一樣,每個人都會有一個,不同的人的姓名不一樣,但是,也可能有一個名字和你一樣的人。從數(shù)據(jù)類型上來看它只是一個16位的無符號整數(shù)。應(yīng)用程序幾乎總是通過調(diào)用一個WINDOWS函數(shù)來獲得一個句柄,之后其他的WINDOWS函數(shù)就可以使用該句柄,以引用相應(yīng)的對象。

如果想更透徹一點(diǎn)地認(rèn)識句柄,我可以告訴大家,句柄是一種指向指針的指針。我們知道,所謂指針是一種內(nèi)存地址。應(yīng)用程序啟動后,組成這個程序的各對象是住留在內(nèi)存的。如果簡單地理解,似乎我們只要獲知這個內(nèi)存的首地址,那么就可以隨時用這個地址訪問對象。但是,如果您真的這樣認(rèn)為,那么您就大錯特錯了。我們知道,Windows是一個以虛擬內(nèi)存為基礎(chǔ)的操作系統(tǒng)。在這種系統(tǒng)環(huán)境下,Windows內(nèi)存管理器經(jīng)常在內(nèi)存中來回移動對象,依此來滿足各種應(yīng)用程序的內(nèi)存需要。對象被移動意味著它的地址變化了。如果地址總是如此變化,我們該到哪里去找該對象呢?

為了解決這個問題,Windows操作系統(tǒng)為各應(yīng)用程序騰出一些內(nèi)存儲地址,用來專門登記各應(yīng)用對象在內(nèi)存中的地址變化,而這個地址(存儲單元的位置)本身是不變的。Windows內(nèi)存管理器在移動對象在內(nèi)存中的位置后,把對象新的地址告知這個句柄地址來保存。這樣我們只需記住這個句柄地址就可以間接地知道對象具體在內(nèi)存中的哪個位置。這個地址是在對象裝載(Load)時由系統(tǒng)分配給的,當(dāng)系統(tǒng)卸載時(Unload)又釋放給系統(tǒng)。

句柄地址(穩(wěn)定)→記載著對象在內(nèi)存中的地址————→對象在內(nèi)存中的地址(不穩(wěn)定)→實(shí)際對象

本質(zhì):WINDOWS程序中并不是用物理地址來標(biāo)識一個內(nèi)存塊,文件,任務(wù)或動態(tài)裝入模塊的,相反的,WINDOWS

API給這些項(xiàng)目分配確定的句柄,并將句柄返回給應(yīng)用程序,然后通過句柄來進(jìn)行操作。

但是必須注意的是程序每次從新啟動,系統(tǒng)不能保證分配給這個程序的句柄還是原來的那個句柄,而且絕大多數(shù)情況的確不一樣的。假如我們把進(jìn)入電影院看電影看成是一個應(yīng)用程序的啟動運(yùn)行,那么系統(tǒng)給應(yīng)用程序分配的句柄總是不一樣,這和每次電影院售給我們的門票總是不同的一個座位是一樣的道理。

Windows句柄和窗口類的映射

Windows窗口是如何將窗口句柄和窗口類對應(yīng)起來的?

答案:通過SetWindowLongPtr和GetWindowLongPtr來映射起來的

以dui窗口為例,在窗口過程函數(shù)里面,收到消息后會有如下的處理步驟:

LRESULT CALLBACK CWindowWnd::__WndProc(HWND hWnd, UINT uMsg, WPARAM wParam, LPARAM lParam)

{

CWindowWnd* pThis = NULL;

if( uMsg == WM_NCCREATE ) {

}

else {

? ? ? ? .........//此處省略

}

if( pThis != NULL ) {

? ? return pThis-HandleMessage(uMsg, wParam, lParam);

}

.......

}

窗口創(chuàng)建成功后,收到wm_nccreate消息,就會將hwnd和窗口類CWindowWnd映射起來

F1? ::SetWindowLongPtr查看msdn關(guān)于此函數(shù)的文檔

可以看到 參數(shù) GWLP_USERDATA 是設(shè)置和窗口關(guān)聯(lián)的,所以其他消息來的時候,就可以通過 GetWindowLongPtr 來根據(jù)hwnd拿到對應(yīng)的窗口類 CWindowWnd ,繼而調(diào)用窗口類里面的HandleMessage來處理消息。

windows 句柄到底是什么

句柄,是整個windows編程的基礎(chǔ)。一個句柄是指使用的一個唯一的整數(shù)值,即一個四字節(jié)長的數(shù)值,來標(biāo)志應(yīng)用程序中的不同對象和同類對象中的不同的實(shí)例,諸如,一個窗口,按鈕,圖標(biāo),滾動條,輸出設(shè)備,控件或者文件等。應(yīng)用程序能夠通過句柄訪問相應(yīng)的對象的信息,但是句柄不是一個指針,程序不能利用句柄來直接閱讀文件中的信息。如果句柄不用在I/O文件中,它是毫無用處的。

句柄是windows用來標(biāo)志應(yīng)用程序中建立的或是使用的唯一整數(shù),windows使用了大量的句柄來標(biāo)志很多對象。

windows

之所以要設(shè)立句柄,根本上源于內(nèi)存管理機(jī)制的問題-虛擬地址,簡而言之?dāng)?shù)據(jù)的地址需要變動,變動以后就需要有人來記錄管理變動,(就好像戶籍管理一樣),因此系統(tǒng)用句柄來記載數(shù)據(jù)地址的變更。

數(shù)據(jù)對象加載進(jìn)入內(nèi)存中之后即獲得了地址,但是這個地址并不是固定的,(至于為什么以及什么情況下變動具體需要大家研究虛擬地址的原理與機(jī)制我這里只提我確定知道的例子)數(shù)據(jù)對象會根據(jù)需要在內(nèi)存與硬盤之間游弋移動(例如不常用的數(shù)據(jù)會為常用數(shù)據(jù)讓出其占用的內(nèi)存空間進(jìn)而被淘汰進(jìn)硬盤中的虛擬內(nèi)存之中以優(yōu)化配置整體系統(tǒng)的資源進(jìn)而提升效率性能),因此其物理地址總是變動的,那么作為管理者

則必須對

管理對象所發(fā)生的變化了如指掌才行,因此系統(tǒng)為進(jìn)程分配固定的地址(句柄)來存儲進(jìn)程下的數(shù)據(jù)對象變化后的地址也就是當(dāng)前的地址,其實(shí)設(shè)計機(jī)制很簡單

:系統(tǒng)的某個部門移動了對象的地址后,同時上報給句柄所屬部門管理者,管理者將改動寫入句柄即可。該數(shù)據(jù)被重新起用時去其所屬句柄內(nèi)按內(nèi)容存取即可。

句柄,英文:HANDLE,在Windows編程中是一個很重要的概念,在許多地方都扮演著重要的角色。但由此而產(chǎn)生的句柄概念也大同小異,比如:《Microsoft

Windows

3

Developer's

Workshop》(Microsoft

Press,by

Richard

Wilton)一書中句柄的概念是:在Windows環(huán)境中,句柄是用來標(biāo)識項(xiàng)目的。

在程序設(shè)計中,句柄是一種特殊的智能指針

。當(dāng)一個應(yīng)用程序要引用其他系統(tǒng)(如數(shù)據(jù)庫、操作系統(tǒng))所管理的內(nèi)存塊或?qū)ο髸r,就要使用句柄。

句柄與普通指針的區(qū)別在于,指針包含的是引用對象的內(nèi)存地址,而句柄則是由系統(tǒng)所管理的引用標(biāo)識,該標(biāo)識可以被系統(tǒng)重新定位到一個內(nèi)存地址上。這種間接訪問對象的模式增強(qiáng)了系統(tǒng)對引用對象的控制。

在上世紀(jì)80年代的操作系統(tǒng)(如Mac

OS

和Windows)的內(nèi)存管理中,句柄被廣泛應(yīng)用。Unix系統(tǒng)的文件描述符基本上也屬于句柄。和其它桌面環(huán)境一樣,Windows

API大量使用句柄來標(biāo)識系統(tǒng)中的對象,并建立操作系統(tǒng)與用戶空間之間的通信渠道。例如,桌面上的一個窗體由一個HWND類型的句柄來標(biāo)識。如今,內(nèi)存容量的增大和虛擬內(nèi)存算法使得更簡單的指針愈加受到青睞,而指向另一指針的那類句柄受到冷淡。盡管如此,許多操作系統(tǒng)仍然把指向私有對象的指針以及進(jìn)程傳遞給客戶端的內(nèi)部數(shù)組下標(biāo)稱為句柄。

什么是句柄?什么是最左素短語?

句柄(Handle)是一個是用來標(biāo)識對象或者項(xiàng)目的標(biāo)識符,可以用來描述窗體、文件等,值得注意的是句柄不能是常量。

Windows之所以要設(shè)立句柄,根本上源于內(nèi)存管理機(jī)制的問題,即虛擬地址。簡而言之?dāng)?shù)據(jù)的地址需要變動,變動以后就需要有人來記錄、管理變動,因此系統(tǒng)用句柄來記載數(shù)據(jù)地址的變更。

最左素短語就是處于句型最左邊的素短語的短語。素短語是一個遞歸的定義,至少含有一個終結(jié)符,并且除它自身之外不再含任何更小的素短語。

擴(kuò)展資料:

句柄的使用

句柄在Windows編程中是一個很重要的概念,在 Windows程序中并不是用物理地址來標(biāo)識一個內(nèi)存塊、文件、任務(wù)或動態(tài)裝入模塊的。相反地,Windows API給這些項(xiàng)目分配確定的句柄,并將句柄返回給應(yīng)用程序,然后通過句柄來進(jìn)行操作。

應(yīng)該明白的是,句柄是一個標(biāo)識符,是用來標(biāo)識對象或者項(xiàng)目的。從數(shù)據(jù)類型上來看它只是一個16位的無符號整數(shù)。

應(yīng)用程序幾乎總是通過調(diào)用一個Windows函數(shù)來獲得一個句柄,之后其他的Windows函數(shù)就可以使用該句柄,以引用相應(yīng)的對象。在 Windows編程中會用到大量的句柄。

請問windows注冊表中的“句柄”是什么意思

在WINDOWS操作系統(tǒng)中,每一個對象都有一個唯一的編號,這個編號就叫句柄,這就好像每個人都有一個名字一樣,用以被別人稱呼或識別。句柄是給編程的人用的,以便程序員在程序中使用、稱呼這個對象。

百科的解釋:句柄,是整個Windows編程的基礎(chǔ)。一個句柄是指使用的一個唯一的整數(shù)值,即一個4字節(jié)(64位程序中為8字節(jié))長的數(shù)值,來標(biāo)識應(yīng)用程序中的不同對象和同類中的不同的實(shí)例,諸如,一個窗口,按鈕,圖標(biāo),滾動條,輸出設(shè)備,控件或者文件等。應(yīng)用程序能夠通過句柄訪問相應(yīng)的對象的信息,但是句柄不是一個指針,程序不能利用句柄來直接閱讀文件中的信息。如果句柄不在I/O文件中,它是毫無用處的。 句柄是Windows用來標(biāo)志應(yīng)用程序中建立的或是使用的唯一整數(shù),Windows使用了大量的句柄來標(biāo)識很多對象。

分享名稱:包含系統(tǒng)句柄windows的詞條
鏈接URL:http://aaarwkj.com/article22/hsoecc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、用戶體驗(yàn)、關(guān)鍵詞優(yōu)化品牌網(wǎng)站制作、、靜態(tài)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

外貿(mào)網(wǎng)站制作
密臀精品国产一区二区| 日本免费一区二区三个| 人妻口爆视频一区二区三区| 久草尤物视频在线观看| 国产三级三级精品久久| 国产精品精品国产一区二区| 亚洲av成人噜噜网站| 亚洲av乱码乱码精品| 97资源视频在线播放| 一区二区三区国产不卡| av一级免费在线观看| 亚洲av成人精品日韩一区麻豆| 女同三人按摩高潮喷出| 精品国产综合一区二区三区| 精品亚洲一区二区三区四| 中文字幕人妻在线播放| 国产精品网站在线观看不卡| 97视频精品免费观看| 日韩精品国产一区二区在线观看| 亚洲av日韩精品一区二区| 欧美一区二区三区高清在线| 日韩色图在线观看视频| 日韩欧美人妻一二三四区| 亚洲一区二区中文字幕av | 日日插天天干夜夜操| 人妻少妇精品一区毛二区| 午夜国产精品福利一二| av影片在线观看亚洲天堂| 国产精品无遮挡猛进猛出| 亚洲黄色av在线免费观看| 日韩在线不卡免费视频一区| 另类激情综合在线观看| 性生活视性生活大片日本| 免费国产三级在线观看| 欧美av一区二区三区四区| 麻豆剧传媒国产精选av| 亚洲黄色av电影在线| 日本国产在线一区二区| 日韩伦理高清在线观看| 国产av剧情一区二区| 精品国产一区二区三区精品日韩|