共用方式為


Handle v5.0

作者: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 輸出

不在搜尋模式中時 (藉由指定名稱片段做為參數啟用),Handle 會將其輸出分割成所要列印控制代碼資訊的每個處理程序的區段。 虛線會作為分隔符號使用,緊接在其下方,您會看到處理程序名稱和其處理程序識別碼 (PID)。 處理程序名稱底下會列出控制代碼值 (以十六進位)、控制代碼相關聯的物件類型,以及物件的名稱 (如果有物件)。

在搜尋模式中時,Handle 會列印處理程序名稱和識別碼列在左側,且符合的物件名稱位於右側。

相關資訊

您可以在 Windows Internals 第 4 版中或使用 WinObj 瀏覽物件管理員名稱空間,以尋找有關物件管理員的詳細資訊。

下載下載句柄 (729 KB)