Autor
|
Tema: BATCH (Verificacion x tiempo si soft esta ejecutandose, caso contrario iniciar) (Leído 8,623 veces)
|
morganfreeman
Desconectado
Mensajes: 6
|
Hola a todos ! Bueno, necesito hacer un batch que cada 10 minutos verifique si un software .exe esta ejecutandose, si se esta ejecutando, que vuelva a verificar en 10 minutos y asi sucesivamente, en el caso de que no este ejecutandose, que lo inicie, se puede hacer eso?
|
|
|
En línea
|
|
|
|
engel lex
|
si se puede, has investigado como se hace? te trancaste en algo haciendolo?
|
|
|
En línea
|
El problema con la sociedad actualmente radica en que todos creen que tienen el derecho de tener una opinión, y que esa opinión sea validada por todos, cuando lo correcto es que todos tengan derecho a una opinión, siempre y cuando esa opinión pueda ser ignorada, cuestionada, e incluso ser sujeta a burla, particularmente cuando no tiene sentido alguno.
|
|
|
morganfreeman
Desconectado
Mensajes: 6
|
Antes que nada muchas gracias por responder. Lo he logrado con esto: :Ocultar title Chequeador de NPC Server :Comprobar tasklist /FI "IMAGENAME eq L2NPC.exe" | findstr PID >nulIF %ERRORLEVEL% LEQ 0 Ping -n 60 localhost >nul & goto : Comprobar IF NOT %ERRORLEVEL% LEQ 0 start /b D:\"test\L2NPC\L2NPC".exe & Ping -n 60 localhost >nul & goto : Comprobar
Pero cuando inicio el programa en forma manual, el programa se ejecuta normalmente, pero cuando lo inicia el batch, este aparece en la lista del Administrador de Tareas, pero no aparece el programa en si, osea me figura que se esta ejecutando pero en realidad no lo esta, que sera?
|
|
« Última modificación: 3 Febrero 2015, 17:16 pm por Eleкtro »
|
En línea
|
|
|
|
Eleкtro
Ex-Staff
Conectado
Mensajes: 9.877
|
cuando inicio el programa en forma manual, el programa se ejecuta normalmente, pero cuando lo inicia el batch, este aparece en la lista del Administrador de Tareas, pero no aparece el programa en si, osea me figura que se esta ejecutando pero en realidad no lo esta, que sera? No entiendo lo que quieres decir, pero de todas formas estás utilizando incorrectamente el comando START, lee la ayuda del comando: Aparte de eso estás usando el operador de concatenación sin agrupar los comandos "(command1 & command2)", seguramente no se procesen las condiciones correctamente debido a eso, así que reemplaza el bloque del label :Comprobar por este otro: :Comprobar (TaskList.exe /FI "IMAGENAME eq L2NPC.exe" | Find /I "L2NPC" )1 >Nul 2 >&1 || ( Start /B "Titulo" "D:\test\L2NPC\L2NPC.exe" ) (Ping.exe -n 60 LOCALHOST )1 >Nul
Saludos
|
|
« Última modificación: 3 Febrero 2015, 17:29 pm por Eleкtro »
|
En línea
|
|
|
|
morganfreeman
Desconectado
Mensajes: 6
|
He probado mi mismo código pero con la calculadora y funciona correctamente: :Ocultar @echo off title Chequeador de NPC Server
:Comprobar tasklist /FI "IMAGENAME eq calc.exe" | findstr PID >nul IF %ERRORLEVEL% LEQ 0 Ping -n 60 localhost >nul & goto :Comprobar IF NOT %ERRORLEVEL% LEQ 0 start /b c:\"windows\system32\calc".exe & Ping -n 60 localhost >nul & goto :Comprobar
La calculadora no solo aparece en la lista del Administrador de Tareas sino que también se ejecuta normalmente. En cambio cuando reemplazo por el exe que realmente necesito ejecutar, lo cierro manualmente a propósito para ver si el batch lo inicia nuevamente pero este, solo se inicia en la lista del Administrador de Tareas, pero el programa no aparece, no se ejecuta con su ventana normal. Sera problema del batch o sera un problema particular del .exe que necesito ejecutar? Se entiende?
|
|
|
En línea
|
|
|
|
Eleкtro
Ex-Staff
Conectado
Mensajes: 9.877
|
La calculadora no solo aparece en la lista del Administrador de Tareas sino que también se ejecuta normalmente. En cambio cuando reemplazo por el exe que realmente necesito ejecutar, lo cierro manualmente a propósito para ver si el batch lo inicia nuevamente pero este, solo se inicia en la lista del Administrador de Tareas, pero el programa no aparece, no se ejecuta con su ventana normal. Sera problema del batch o sera un problema particular del .exe que necesito ejecutar? Se entiende?
Creo que ya entiendo a lo que te refieres, ¿el programa L2NPC tiene una interface command-line?, entonces al utilizar el comando start el programa se ejecuta en la misma instancia de la CMD que tienes abierta, para evitar que esto ocurra puedes hacerlo así: Start "" CMD /K " "D:\test\L2NPC\L2NPC.exe" "
Ten en cuenta que el comportamiento de un programa como la calculadora de Windows, que usa una interfáz Gráfica, con un programa que usa una intefáz por linea de comandos, es completamente diferente, cuando termina la ejecución del programa commandline éste desaparece del taskmanager, aunque realmente no se si es eso a lo que te estás refiriendo. PD: De todas formas, sigues utilizando muy malas prácticas de programación en el código que has mostrado y podría ocasionarte problemas, porfavor, reemplazalo por el ejemplo que te he mostrado anteriormente. Saludos!
|
|
« Última modificación: 3 Febrero 2015, 18:12 pm por Eleкtro »
|
En línea
|
|
|
|
morganfreeman
Desconectado
Mensajes: 6
|
Hola, antes que nada muchas gracias por responder! L2NPC.exe tiene una interfaz gráfica, cuando lo ejecuto en forma manual se abre una ventana que muestra lo que se esta ejecutando. Este programa es muy inestable, razones que no vienen al caso. Se cierra 2 o 3 veces al dia, lo que necesito con un batch, es que cuando se cierre, lo vuelva a abrir.
Me parece que es un problema particular del exe, ya que cuando lo inicio manualmente, este se ejecuta bien y queda prendido en su interfaz grafica y aparece en la lista del Administrador de Tareas, pero cuando lo ejecuta el batch, este SI aparece en la lista del Administrador de tareas, pero no aparece su interfaz grafica.
|
|
|
En línea
|
|
|
|
Eleкtro
Ex-Staff
Conectado
Mensajes: 9.877
|
Hola, antes que nada muchas gracias por responder! L2NPC.exe tiene una interfaz gráfica, cuando lo ejecuto en forma manual se abre una ventana que muestra lo que se esta ejecutando. Este programa es muy inestable, razones que no vienen al caso. Se cierra 2 o 3 veces al dia, lo que necesito con un batch, es que cuando se cierre, lo vuelva a abrir.
Me parece que es un problema particular del exe, ya que cuando lo inicio manualmente, este se ejecuta bien y queda prendido en su interfaz grafica y aparece en la lista del Administrador de Tareas, pero cuando lo ejecuta el batch, este SI aparece en la lista del Administrador de tareas, pero no aparece su interfaz grafica.
¿Puedes compartir el exe o una url de descarga, para analizarlo mejor? saludos!
|
|
|
En línea
|
|
|
|
|
Eleкtro
Ex-Staff
Conectado
Mensajes: 9.877
|
Si no puedo ejecutarlo en condiciones no puedo evaluarlo e intentar solucionarlo en Batch u otro lenguaje. Lo he testeado en dos VMs pero el debugger registra un error (de lectura de memoria) antes de que el programa pueda cargar la UI: An Access Violation in module L2NPC.exe at 0033:0046adaf. Read from location 00000a00 caused an access violation. ¿Es un programa comercial?, ¿no hay una url de descarga ni dispones de un paquete de instalación?. Saludos
|
|
« Última modificación: 4 Febrero 2015, 02:33 am por Eleкtro »
|
En línea
|
|
|
|
|
Mensajes similares |
|
Asunto |
Iniciado por |
Respuestas |
Vistas |
Último mensaje |
|
|
crackear un exe ? (NO ES UN SOFT .. SOLO UN CASO PRACTICO)
Ingeniería Inversa
|
fedexx
|
5
|
4,901
|
24 Noviembre 2005, 17:11 pm
por Casidiablo
|
|
|
¿Cómo detecto si un programa está ejecutándose?
Programación Visual Basic
|
javito14
|
6
|
2,724
|
27 Julio 2008, 11:47 am
por SKL (orignal)
|
|
|
BATCH Ejecutar programa X tiempo si no se esta ejecutando SOLUCIONADO
Scripting
|
Synth3tik0
|
5
|
13,860
|
8 Enero 2013, 06:17 am
por recari19833
|
|
|
¿Como ocultar programa al iniciar windows pero que siga ejecutandose?
Windows
|
[{tusombra}]
|
6
|
13,305
|
8 Enero 2012, 09:03 am
por Randomize
|
|
|
¿COBOL está muerto? Los datos muestran lo contrario
Noticias
|
wolfbcn
|
2
|
2,538
|
26 Marzo 2013, 21:16 pm
por arts
|
|