WinDBG的 !handle 命令可以讓你方便調試句柄(handle)。
?
查看進程內所有句柄 , 輸入命令行?
0:014>
!handle
Handle 4
? Type???????? ?Directory
Handle 8
? Type???????? ?Process
Handle c
? Type???????? ?Key
Handle 10
? Type???????? ?Mutant
Handle 14
? Type???????? ?ALPC Port
Handle 18
? Type???????? ?Key
Handle 1c
? Type???????? ?Event
Handle 20
? Type???????? ?Key
?... (省略)
?
Handle 7e0
? Type???????? ?Mutant
392 Handles
Type?????????? ?Count
None?????????? ?17
Event????????? ?134
Section??????? ?47
File?????????? ?35
Directory????? ?3
Mutant???????? ?34
WindowStation? ?2
Semaphore????? ?24
Key??????????? ?47
Token????????? ?1
Process??????? ?3
Thread???????? ?27
Desktop??????? ?1
IoCompletion?? ?4
Timer????????? ?5
Job??????????? ?1
KeyedEvent???? ?1
TpWorkerFactory?6
從WinDBG輸出結果我們可以看到所有句柄的類型和值,以及統計信息(一共392個handle,其中有35個文件句柄,47個注冊表句柄 .... )。
?
?
如果想 查看某個句柄的詳細信息 , 可以用命令:
?
0:014>
!handle 0x5c8 f
Handle 5c8
? Type???????? ?Key
? Attributes?? ?0
? GrantedAccess?0x20019:
???????? ReadControl
???????? QueryValue,EnumSubKey,Notify
? HandleCount? ?2
? PointerCount ?3
? Name???????? ?/REGISTRY/USER/S-1-5-21-2127521184-1604012920-1887927527-2966534/Software/Microsoft/Windows/CurrentVersion/Explorer/FileExts
? Object Specific Information
??? Key last write time:? 16:52:14. 5/20/2009
??? Key name FileExts
?
0x5c8 是句柄的值, 參數f 表示顯示全部信息。 我們可以看到句柄0x5c8 是注冊表句柄,路徑為/REGISTRY/USER/S-1-5-21-2127521184-1604012920-1887927527-2966534/Software/Microsoft/Windows/CurrentVersion/Explorer/FileExts。
?
?
值得一提的是,WinDBG 還提供了 !htrace 命令,可以很方便來用檢查句柄泄露(Handle Leak), 下次再寫篇blog 專門介紹 !htrace 。
?
?
>> 原創文章的版權屬于作者,轉載請注明出處( http://blog.csdn.net/WinGeek/ ), 謝謝。 <<
?
?
更多文章、技術交流、商務合作、聯系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
