Quiero hacer un pequeño script q cheque cada X tiempo si el proceso esta activo
y si no que lo ejecute de nuevo. Se me a ocurrido esto:
@echo off
:TIMER
Timeout /t 60 /nobreak >nul
set /p calc.exe=calc.exe
set /p calc1.exe=| tasklist | findstr calc.exe
if %calc.exe% == %calc1.exe% GOTO :TIMER
if not %calc.exe% == %calc1.exe% start calc.exe
GOTO:TIMER
Pero no logro hacer q funcione si alguien pudiera decirme que esta mal
o me dijeran al menos como paso la salida de la busqueda de findstr a una variable?
Prueba con este mio:
:Ocultar
@echo off
title=Chequeador
nircmd win hide ititle "Chequeador" (ESTA LÍNEA ES OPCIONAL, CLARO... XD)
:Comprobar
tasklist /FI "IMAGENAME eq calc.exe" | findstr PID >nul
IF %ERRORLEVEL% LEQ 0 Ping -n 5 localhost >nul & goto :Comprobar
IF NOT %ERRORLEVEL% LEQ 0 start /b c:\"windows\system32\calc".exe & Ping -n 5 localhost >nul & goto :Comprobar
Probado y funciona :P
;-)genial ;D Funcionaa thanks..
Pero tengo una duda en Ping -n 5 localhost son milisegundos o segundos?
son segundos.
saludos!
Cita de: pitoloko en 7 Marzo 2011, 17:20 PM
son segundos.
saludos!
Ninguno de los dos.
Son el número de solicitudes de echo.
Amigos esto si funciona pero por ejemplo si el el programa esta en (NO RESPONDE) este batch funciona de todos modos??? agradeceria su respuesta