Murat Delibal

Bir delinin bilişim günlüğü


exe kill loop windows

::Simple monitor and kill process (exact name)
@echo off&prompt :&mode con cols=50 lines=10

set processname=test.exe

:loop
cls&echo Searching for %processname%…
for /f “tokens=1 delims=,” %%a in (‘tasklist /fo csv ^|FINDSTR /C:”%processname%”‘) do call :killprocess %%a
ping -n 6 127.0.0.1>NUL
goto :loop

:killprocess
set name=%*
set name=.,;%name:”=%;,.
echo %name%|FINDSTR /C:”.,;%processname%;,.”>nul || goto :eof
echo. |set /p d=killing %*…
taskkill /f /im “%*”>nul 2>&1
set err=%errorlevel%
set success=Success
if not %err%==0 set success=fail (err code: %err%)
if %err%==128 set success=fail (process not found)
echo %success%&goto :eof

bu script’i .bat şeklinde startup scripts içerisine atariseniz bilgisayar açıldıktan sonra test.exe çalıştırıldığında 6 saniye içerisinde kill edecektir.

exe sadece ilk açıldığında kill edilmesini istiyorsanız aşağıdaki şekilde kullanabilirsiniz

::Simple monitor and kill process (exact name)
@echo off&prompt :&mode con cols=50 lines=10

set processname=maden.exe

:loop
cls&echo Searching for %processname%…
for /f “tokens=1 delims=,” %%a in (‘tasklist /fo csv ^|FINDSTR /C:”%processname%”‘) do call :killprocess %%a
ping -n 6 127.0.0.1>NUL
goto :loop

:killprocess
set name=%*
set name=.,;%name:”=%;,.
echo %name%|FINDSTR /C:”.,;%processname%;,.”>nul || goto :eof
echo. |set /p d=killing %*…
taskkill /f /im “%*”>nul 2>&1
set err=%errorlevel%
set success=Success
if not %err%==0 set success=fail (err code: %err%)
if not %err%==1 goto end
if %err%==128 set success=fail (process not found)
echo %success%&goto :eof

:end
exit

Faydalı olması dileğiyle.

Leave a comment