Process Kill0r
mardi 2 novembre 2004 | Webdesign
Encore du PHP pour un script de fainéant qui kill les processus indésirables sous windows (pratique avant de lancer une application qui nécessite beaucoup de ressources). A customiser selon vos envies. A titre culturel, shell_exec exécute une commande et retourne le résultat dans une chaîne. On se sert ici de la commande tasklist qui dresse une liste des processus lancés. Si une des lignes contient le nom d'un exécutable concerné, le signal d'arrêt lui est envoyé avec taskkill /IM. L'option /F force la fin si celle-ci prend son temps.

<?php
/* Process Kill0r 1.0 by dew */
$str=shell_exec("tasklist");
$str=explode("\n",$str);
$process=array(
'Apache.exe', // Apache
'mysqld-nt.exe', // MySQL
'Winamp.exe', // Winamp
'atiptaxx.exe', // Control Panel ATI
'ati2evxx.exe', // Encore de l'ATI
'tablet.exe', // Tablette graphique
'TabUserW.exe', // Tablette graphique
'wmiprvse.exe', // Windows Management Thing
'cthelper.exe', // Creative Thing
'uphclean.exe', // Fast session close
'spoolsv.exe', // Spool Impression
'supercopier.exe', // SuperCopier
'ctfmon.exe', // Microsoft Language Thing
);
foreach($str as $ligne) {
foreach($process as $p) {
if(preg_match('/'.$p.'/i',$ligne)) {
exec("taskkill /IM $p /F");
}
}
}
?>
A lancer avec la commande php.exe -q script.php (si le chemin est spécifié dans PATH, etc...).
Fini le geek stuff, demain on reprend avec de la philo, promis.




