Como hacer funcionar este batch perfectamente?

Iniciado por SoloAki, 7 Enero 2008, 00:53 AM

0 Miembros y 1 Visitante están viendo este tema.

SoloAki

Hola con el poco tiempo que estuve leyendo estuve aprendiendo muy pocas cosas porque estaba medio apurado es asi.. hice un pequeño batch que lo que hace es abrir el explorer.exe cada tanto tiempo



Citar@echo off
start /min explorer.exe
ping -n 5 127.0.0.1 >nul
start /min explorer.exe
ping -n 5 127.0.0.1 >nul
start /min explorer.exe
exit

Ahora estas son mis dudas.. Hay alguna manera para programar en batch que cada tanto tiempo se ejecute? y que no tenga que copiar eso muchas veces osea un seguimiento.. como llamarlo por asi decirlo cada tanto. Otra duda mia es le hice /min para que se minimize pero no hay alguna forma de que se ejecute oculto? algo como hide que no se vea la ventana abierta eso seria muy sospechoso. Por ultimo cuando hago esto la ventana ms-dos se mantiene abierta y no quiero que se quede ahi hasta que se ejecute todo. Y por ultimo deje programado unas funciones con el at y me gustaria borrarlas osea delete y nose como seria la funcion o cmd para eso. Estas son mis dudas por ahora si pudieran ayudarme estaria re agradecido


PD: SRRY no sabia donde poner esto no vi la sección correspondiente :(

Vlad_Asen

Cita de: SoloAki en  7 Enero 2008, 00:53 AM
Ahora estas son mis dudas.. Hay alguna manera para programar en batch que cada tanto tiempo se ejecute? y que no tenga que copiar eso muchas veces osea un seguimiento.. como llamarlo por asi decirlo cada tanto. Otra duda mia es le hice /min para que se minimize pero no hay alguna forma de que se ejecute oculto? algo como hide que no se vea la ventana abierta eso seria muy sospechoso. Por ultimo cuando hago esto la ventana ms-dos se mantiene abierta y no quiero que se quede ahi hasta que se ejecute todo

PD: SRRY no sabia donde poner esto no vi la sección correspondiente :(

Para programar tareas en horas y dias determinados esta el comando AT. y para que no se vea la ventana agrega puedes hacer start /b xxxxx

Stacker

Para ejecutar el código tantas veces como quieras modificalo así:

@echo off
set contador=0
:vuelta
start /min explorer.exe
ping -n 5 127.0.0.1 >nul
set /a contador+=1
if %contador%==[NUMERO DE VECES A EJECUTAR] exit
goto vuelta



Si lo que quieres es que se ejecute indefinidamente elimina las lineas:

  • set contador=0
  • set /a contador+=1
  • if contador==[NUMERO DE VECES A EJECUTAR] exit


En batch ":ejemplo", establece un punto desde el que seguir la ejecución al usar "GOTO ejemplo".

El comando SET establece variables en las que guardar datos, y el modificador /a nos permite operar con números.
Para hacer referencia al valor de la variable usa: %nombrevariable%

Con IF puedes crear estructuras condicionales: IF [CONDICIÓN] comando

Usa [COMANDO] /? para más información de cualquier comando.




Para tareas programadas:
at - muestra todas las tareas actuales
at id /delete - elimina la tarea con ese id
at /delete - elimina todas las tareas, añade /yes para no confirmación




En cuanto a lo de ocultar la ejecución de comandos... sí, es posible pero tienes que convertir el batch en un EXE con un batch compiler que incorpore esta opción. Yo solo te puedo recomendar "Quick Batch File Compiler", si alguien sabe de otra opción que incorpore esta característica también te servirá.

También puedes usar aplicaciones del tipo de NirCmd.


Para cualquiera de las dos soluciones puedes usar google para informate, hay bastante información sobre el tema.




También hay por ahí buenos tutoriales de batch, te lo recomiendo.  ;)


Saludos.

Vlad_Asen

Yo mis batch los convierte en exe con el WinRar. Quedan muy bien ;D

SoloAki


???

Cita de: Vlad_Asen en 11 Enero 2008, 02:57 AM
Yo mis batch los convierte en exe con el WinRar. Quedan muy bien ;D

Eso es sencillamente imposible...  :¬¬

Novlucker

Cita de: Otto VanHackman en 12 Enero 2008, 02:27 AM
Cita de: Vlad_Asen en 11 Enero 2008, 02:57 AM
Yo mis batch los convierte en exe con el WinRar. Quedan muy bien ;D

Eso es sencillamente imposible...  :¬¬

Creo que a lo que se refiere a que crea archivos SFX, es decir, archivos autoextraíbles, esos si son *.exe   :P
Saludos
Contribuye con la limpieza del foro, reporta los "casos perdidos" a un MOD XD

"Hay dos cosas infinitas: el Universo y la estupidez  humana. Y de la primera no estoy muy seguro."
Albert Einstein

???

Igualmente esta mal ya que no es lo mismo crear SFX que convertir un .bat a .exe...

Vlad_Asen

#8
[quote author=Otto VanHackman link=topic=194679.msg928898#msg928898

Eso es sencillamente imposible...  :¬¬
Ejemplo practico:

tenemos el archivo papa.bat

Logicamente hay que tener instalado el WinRar

Le damos click derecho con el boton del mousse y elegimos "Añadir al archivo...". Le cambias el nombre (esto es opcional) a por ejemplo spepe.rar

en ese mismo panel le das tilde a la segunda casilla "Crear un fichero autoextraible" Automaticamente el WinRar convierte tu archivo en un .exe.
Luego  desde el mismo WinRar se pueden hacer muchas cosas como cambiarle el icono, que se ejecute en silencio (no pida confirmaciones, etc), que se descomprima automaticamente en determinadas carpetas.



???

Cita de: Vlad_Asen en 12 Enero 2008, 02:43 AM
[quote author=Otto VanHackman link=topic=194679.msg928898#msg928898

Eso es sencillamente imposible...  :¬¬
Ejemplo practico:

tenemos el archivo papa.bat

Logicamente hay que tener instalado el WinRar

Le damos click derecho con el boton del mousse y elegimos "Añadir al archivo...". Le cambias el nombre (esto es opcional) a por ejemplo spepe.rar

en ese mismo panel le das tilde a la segunda casilla "Crear un fichero autoextraible" Automaticamente el WinRar convierte tu archivo en un .exe.
Luego  desde el mismo WinRar se pueden hacer muchas cosas como cambiarle el icono, que se ejecute en silencio (no pida confirmaciones, etc), que se descomprima automaticamente en determinadas carpetas.


Respuesta Practica:

Cita de: Otto VanHackman en 12 Enero 2008, 02:43 AM
Igualmente esta mal ya que no es lo mismo crear SFX que convertir un .bat a .exe...

Consejo practico:

Aprende a reconocer la diferencia entre un SFX (archivo autoextraible) y un programa ejecutable.