訓練
模組
Explore support and diagnostic tools - Training
This module introduces the tools for troubleshooting the Windows client operating system and provides guidance on how to use them.
作者:Mark Russinovich
發佈時間:2022 年 10 月 26 日
下載句柄 (729 KB)
曾經想知道哪個程式有特定檔案或目錄開啟? 現在您可以了解。Handle 是公用程式,會顯示系統中任何處理程序的開啟控制代碼相關資訊。 您可以使用它來查看已開啟檔案的程式,或查看程式的所有控制代碼的物件類型和名稱。
您也可以在 Sysinternals 取得此程式的 GUI 型版本 Process Explorer。
您可以輸入 "handle" 來執行 Handle。 您必須具有執行 Handle 的系統管理權限。
Handle 是以搜尋開啟的檔案參考為目標,因此如果您未指定任何命令列參數,則會列出系統中參考開啟檔案和檔案名稱的所有控制代碼值。 它也會採用會修改此行為的數個參數。
用法: handle [[-a [-l]] [-v|-vt] [-u] | [-c <handle> [-y]] | [-s]] [-p <process>|<pid>] [name]
參數 | 描述 |
---|---|
-a | 傾印所有類型的控制代碼資訊,而不只是參考檔案的資訊。 其他類型包括連接埠、登錄機碼、同步基本類型、執行緒和處理程序。 |
-l | 只要顯示分頁檔支援的區段控制代碼即可。 |
-c | 關閉指定的控制代碼 (解譯為十六進位數字)。 您必須依其 PID 指定處理程序。 警告:關閉控制代碼可能會導致應用程式或系統不穩定。 |
-g | 列印授與的存取權。 |
-y | 不提示關閉控制代碼確認。 |
-s | 列印每個開啟控制代碼類型的計數。 |
-u | 搜尋控制代碼時顯示擁有者使用者名稱。 |
-v | 使用逗號分隔符號的 CSV 輸出。 |
-vt | 使用 Tab 分隔符號的 CSV 輸出。 |
-p | 此參數不會檢查系統中的所有控制代碼,而是將 Handle 的掃描縮小到以名稱處理程序開頭的處理程序。 因此: handle -p exp 會傾印開頭為 "exp" 的所有處理程序的開啟檔案,其中包括 Explorer。 |
name | 此參數存在,因此您可以指示 Handle 來搜尋具有特定名稱物件的參考。 例如,如果您想要知道哪個處理程序 (如果有的話) 開啟 "c:\windows\system32",您可以輸入: handle windows\system 名稱比對不區分大小寫,而指定的片段可以是您感興趣的路徑中的任何位置。 |
不在搜尋模式中時 (藉由指定名稱片段做為參數啟用),Handle 會將其輸出分割成所要列印控制代碼資訊的每個處理程序的區段。 虛線會作為分隔符號使用,緊接在其下方,您會看到處理程序名稱和其處理程序識別碼 (PID)。 處理程序名稱底下會列出控制代碼值 (以十六進位)、控制代碼相關聯的物件類型,以及物件的名稱 (如果有物件)。
在搜尋模式中時,Handle 會列印處理程序名稱和識別碼列在左側,且符合的物件名稱位於右側。
您可以在 Windows Internals 第 4 版中或使用 WinObj 瀏覽物件管理員名稱空間,以尋找有關物件管理員的詳細資訊。
下載句柄 (729 KB)
訓練
模組
Explore support and diagnostic tools - Training
This module introduces the tools for troubleshooting the Windows client operating system and provides guidance on how to use them.