バッチファイルでプロセスIDに対応するプロセス名や実行ファイルのパスを取得する

バッチファイル

WindowsのプロセスIDに対応するプログラムの識別は、TCP/IP通信を行うアプリを作成する際の調査に役立つことがあります。

本記事では、プロセスIDからプログラム名(プロセス名)やそのプログラムの実行ファイルが格納されているパスを取得する方法を紹介します。

サンプルコード1:PIDからプログラム名(プロセス名)を取得

ユーザが入力したプロセスIDに対応するプログラム名(プロセス名)を表示するバッチファイルです。

@echo off

rem ユーザにPIDの入力を求める
set /p PID="Enter the PID you want to find: "

rem タスクリストコマンドで対応するPIDの情報を取得する
tasklist /fi "PID eq %PID%"

echo Done.
pause

実行結果

Enter the PID you want to find: 380

イメージ名                     PID セッション名     セッション# メモリ使用量
========================= ======== ================ =========== ============
cmd.exe                        380 Console                    1      4,616 K
Done.
続行するには何かキーを押してください . . .

サンプルコード2:PIDからプログラムの絶対パスを取得する

ユーザが入力したプロセスIDに対応するプログラムの絶対パスを表示するバッチファイルです。

@echo off

rem ユーザにPIDの入力を求める
set /p PID="Enter the PID you want to find: "

rem PIDに対応するプログラムの絶対パスを取得する
wmic process where ProcessId=%PID% get ExecutablePath

echo Done.
pause

実行結果

Enter the PID you want to find: 380
ExecutablePath
C:\WINDOWS\system32\cmd.exe

Done.
続行するには何かキーを押してください . . .

    まとめ

    本記事では、プロセスID(PID)からプログラム名やプログラムの絶対パスを取得する方法を紹介しました。

    タイトルとURLをコピーしました