Now this example uses
putty.exe right now, but the original purpose was to alert when a jrun.exe was getting too big for it's britches. Run as a scheduled task (AT job) and customize to suit:
@echo off
for /F "usebackq tokens=1,2,3,4,5,6 delims=, " %%a IN (`tasklist /NH /FI "imagename eq putty.exe"`) do CALL :CHECKMU %%e%%f
goto :eof
:CHECKMU
SET /A MEMUSAGE=0+%~1
IF /I %MEMUSAGE% GTR 1400 echo Memory Usage Warning: %MEMUSAGE%
GOTO :eof
The
echo for 'Memory Usage Warning' will only execute if the memory usage exceeds
1400 (in this example) This could be a call, note the use of subroutines in the batch file (CHECKMU). If there are many processes running the PID could be passed using other variables (%%a, %%b, etc.) but it will execute for each instance that meets the criteria.