プロセスIDの検索
Windows で実行されている各プロセスには、プロセス ID (PID) と呼ばれる一意の 10 進数が割り当てられます。 この数は、デバッガーをアタッチするときにプロセスを指定するなど、さまざまな方法で使用されます。
このトピックでは、タスク マネージャー、タスク リスト Windows コマンド、TList ユーティリティ、PowerShell Get-Process コマンド、またはデバッガーを使用して、特定のアプリの PID を決定する方法について説明します。
タスク マネージャ
タスク マネージャーはさまざまな方法で開くことができますが、最も簡単な方法は Ctrl + Alt + Delete キーを押し、[タスク マネージャー] を選択 することです。
Windows では、まず [詳細] をクリックして、表示される情報を展開します。 [プロセス] タブで [詳細] を選択すると、PID 列に一覧表示されているプロセス ID が表示されます。
任意の列名をクリックして並べ替えます。 プロセス名を右クリックすると、プロセスのその他のオプションを表示できます。
カーネル エラーによっては、タスク マネージャーのグラフィカル インターフェイスに遅延が発生する場合があります。
tasklist コマンド
コマンド プロンプトから組み込みの Windows tasklist コマンドを使用して、すべてのプロセス、その PID、およびその他のさまざまな詳細を表示します。
C:\>tasklist
Image Name PID Session Name Session# Mem Usage
========================= ======== ================ =========== ============
System Idle Process 0 Services 0 8 K
System 4 Services 0 7,428 K
Secure System 104 Services 0 40,344 K
Registry 164 Services 0 146,596 K
smss.exe 592 Services 0 1,176 K
csrss.exe 896 Services 0 6,224 K
wininit.exe 980 Services 0 6,572 K
...
コマンドラインヘルプを表示するために tasklist /?
使用します。
TList ユーティリティ
タスク リスト ビューアー (TList) (tlist.exe) は、ローカル コンピューターで現在実行されているタスクまたはユーザー モード プロセスの一覧を表示するコマンド ライン ユーティリティです。 TList は Windows 用デバッグ ツールに含まれています。 デバッグ ツールのダウンロードとインストールの方法については、「Windows 用デバッグ ツール」を参照してください。
Windows Driver Kit を 64 ビット PC の既定のディレクトリにインストールした場合、デバッグ ツールは次の場所にあります。
C:\Program Files (x86)\Windows Kits\10\Debuggers\x64\
コマンド プロンプトから TList を実行すると、メモリ内のすべてのユーザー モード プロセスの一覧が一意の PID 番号で表示されます。 プロセスごとに、PID、プロセス名、プロセスにウィンドウがある場合は、そのウィンドウのタイトルが表示されます。
C:\Program Files (x86)\Windows Kits\10\Debuggers\x64>tlist -t
System Process (0)
System (4)
smss.exe (592)
Memory Compression (3376)
Secure System (104)
Registry (164)
csrss.exe (896)
wininit.exe (980)
services.exe (660)
svchost.exe (1232)
WmiPrvSE.exe (6008)
dllhost.exe (1748)
WmiPrvSE.exe (1860)
...
詳細については、「TList」を参照してください。
.tlist デバッガー コマンド
対象のシステムで既にユーザー モード デバッガーが実行されている場合は、 .tlist (プロセス ID の一覧表示) コマンドによって、そのシステム上のすべての PID の一覧が表示されます。
PowerShell Get-Process コマンド
自動化スクリプトを操作するには、Get-Process PowerShell コマンドを使用します。 特定のプロセス名を指定して、そのプロセスのプロセス ID を表示します。
C:\> Get-Process explorer
Handles NPM(K) PM(K) WS(K) CPU(s) Id SI ProcessName
------- ------ ----- ----- ------ -- -- -----------
2520 404 108948 179284 1,702.95 7656 1 explorer
詳細については、「Get-Process」を参照してください。
その他のリソース
Windows の内部 (コンテキスト、スレッド、プロセスなど) について詳しくは、Pavel Yosifovich、Mark Russinovich、David Solomon、Alex Ionescu 著の Windows Internals などの追加リソースを参照してください。