Pour tuer un processus dans un environement de script Windows, PowerShell est l’outil idéal. Il suffit de fabriquer un fichier de script PowerShell :
fichier de script: kill_process.ps1
Ce script tue le process nommé MyProcess si il existe. L’action sur erreur empêche le script de faire une sortie d’informations si une erreur se produit, par exemple si le process n’existe pas.
Get-Process -Name "MyProcess" -ErrorAction SilentlyContinue | Stop-Process
Pour exécuter le script, il faut lancer la commande MSDos :
powershell -File "kill_process.ps1"
Au cas ou l’exécution des scripts est désactivée dans Windows pour des raisons de sécurité, on aura recours à la commande suivante dans une console MSDos :
powershell -Command Set-ExecutionPolicy -ExecutionPolicy Unrestricted
Très utile comme événement de pre-build dans Visual Studio lorsque on veut compiler un projet dont le debug laisse un processus en activité dans le système, celui-ci empêchant la compilation…