特定のプロセスがプロセスとして実行されているかどうかを確認します
tasklist コマンドがある場合は、次のことを確認してください。
// show tasks, redirect errors to NUL (hide errors)
exec("tasklist 2>NUL", $task_list);
print_r($task_list);
次に、行からタスク名を照合/抽出することにより、それを強制終了できます。
exec("taskkill /F /IM killme.exe 2>NUL");
私はそれをphp-cliでよく使用しました。例:
// kill tasks matching
$kill_pattern = '~(helpctr|jqs|javaw?|iexplore|acrord32)\.exe~i';
// get tasklist
$task_list = array();
exec("tasklist 2>NUL", $task_list);
foreach ($task_list AS $task_line)
{
if (preg_match($kill_pattern, $task_line, $out))
{
echo "=> Detected: ".$out[1]."\n Sending term signal!\n";
exec("taskkill /F /IM ".$out[1].".exe 2>NUL");
}
}