Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: Pony-Magic en 31 Diciembre 2008, 03:00 am



Título: Saber si un proceso esta abierto.
Publicado por: Pony-Magic en 31 Diciembre 2008, 03:00 am
Bueno, vi un code que usaba errorlevel para saber si un proceso esta abierto o no.
yo siempre use esto:

Código:
:Task
for /f "Tokens=1" %%p in ('tasklist') do ( if "%%p"=="%1" ( set %2=Si & GoTo:Eof ) else ( set %2=No)) & GoTo:Eof
( Call:Task Proceso.exe variable )
Pero me gustaria saber como es con %errorlevle%, si alguien me lo explica, porque la otra vez no lo entendi.


Título: Re: Saber si un proceso esta abierto.
Publicado por: leogtz en 31 Diciembre 2008, 07:38 am
Yo veo mas facil hacer algo como esto :
Código:
@ECHO OFF
TASKLIST | FIND /I "%1" > NUL 2>&1 && (
ECHO PROCESO ENCONTRADO!
) || (
ECHO PROCESO NO ENCONTRADO!
)
PAUSE>NUL

ó

Código:
@ECHO OFF
WMIC PROCESS GET NAME | FIND /I "%1" && (
ECHO.SI
) || (
ECHO.NO
)
PAUSE>NUL


Título: Re: Saber si un proceso esta abierto.
Publicado por: -Soldier- en 31 Diciembre 2008, 20:48 pm
Y para los que quieran ejecutarlo directamente

Código:
@ECHO OFF
SET /P p="Proceso a buscar: "
TASKLIST | FIND /I "%p%" 2>NUL >NUL && (
ECHO El proceso %p% se esta ejecutando
) || (
ECHO El proceso %p% no se encuentra en ejecucion
)
PAUSE>NUL&&GOTO:EOF

Saludos