Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: Cronos - Carthago en 24 Enero 2008, 10:02 am



Título: ejecutar un bat en segundo plano
Publicado por: Cronos - Carthago en 24 Enero 2008, 10:02 am
mmm pues eso, se puede haces que al abrir un *.bat que este en segundo plano y que no se vea

tambien queria saber si se puede ejecutar desde un .bat otro bat en la misma carpeta... weno eso creo k si se puede, voy a ver ;) enga gracias


Título: Re: ejecutar un bat en segundo plano
Publicado por: MK-Ultra en 24 Enero 2008, 13:18 pm
si vos queres llamar a un archivo de lotes para que se ejecute d ese modo tienes que usar:


start /b tuarchivo.bat

Aunque no funciona siempre :S


Título: Re: ejecutar un bat en segundo plano
Publicado por: Cronos - Carthago en 24 Enero 2008, 17:53 pm
mmm lo acabo de probar y eso lo k hace es ejecutar el archivo desde el archivo que llama, osea, script1 crea un archivo y lo ejecuta debajo, yo quiero que script1 cree un archivo nuevo y lo ejecute a parte, gracias por la respuesta de todos modos


Título: Re: ejecutar un bat en segundo plano
Publicado por: Cronos - Carthago en 24 Enero 2008, 17:56 pm
vale, ya xD
si lo quiero abrir a parte, en vez de ponerle argumentos, con llamar al archivo simplemente lo hacer... jeje  :-\
ahora lo k me falta es saber como escribir desde un archivo por lotes otro archivo... a ver si me sale algo...  :P gracias de todos modos


Título: Re: ejecutar un bat en segundo plano
Publicado por: Novlucker en 24 Enero 2008, 18:55 pm
Simplemente redireccionando la salida de pantalla a un archivo

Ej:

Código:
echo >> elarchivo.bat

Saludos


Título: Re: ejecutar un bat en segundo plano
Publicado por: MK-Ultra en 24 Enero 2008, 19:32 pm
eso lo haces del siguiente modo:

supongamos que necesitas poner echo hola en tu archivo.bat desde otro bat o desde el cmd directamente:
Código:
echo echo hola >> archivo.bat
ahora, supongamos que se te plantea por algun motivo querer desde 1 archivo por lotes(este es el archivo inicial, desde el cual empiesa la cadena) que escriba algo en otro archivo de lotes(al que llamaremos archivo1.bat) y despues desde ese archivo de lotes que se ejecute y que escriba algo en un archio de lotes(vamos a llamarlo archivo2.bat).  :rolleyes:
se hace de esta manera:
Código:
echo echo echo hola ^>^> archivo2.bat >> archivo1.bat


Título: Re: ejecutar un bat en segundo plano
Publicado por: Cronos - Carthago en 30 Enero 2008, 08:50 am
ok gracias  ;) pero hasta hay llegue yo XD pero gracias de todos modos

lo k buskaba es que se ejecute el bat en segundo plano, osea, k no se vea a la vista pero se este ejecutando de fondo. entendeis? graciass por lo de antes  :P


Título: Re: ejecutar un bat en segundo plano
Publicado por: Novlucker en 30 Enero 2008, 09:27 am
Pero lo has conseguido???

En mi caso lo que hago es llamar el *.bat desde un *.vbs con este code

Código:
set objshell = createobject("wscript.shell")
objshell.run "C:\prueba.bat", vbhide

Con eso no salta el pantallazo del ms-dos  ;)

Saludos


Título: Re: ejecutar un bat en segundo plano
Publicado por: MK-Ultra en 30 Enero 2008, 14:21 pm
Y sino la otra que queda es mediante un conversor ( Sugiero Quick Batch File Compiler ) pasarlo a .exe , asi cuando se ejecuta no se ve el ms-dos (a menos que el programa lo requiera).

 ;)


Título: Re: ejecutar un bat en segundo plano
Publicado por: Cronos - Carthago en 31 Enero 2008, 08:34 am
^^ muchas gracias, ahora estoy en clase pero cuando tenga 1 minutito lo pruebo :D gracias a todos


Título: Re: ejecutar un bat en segundo plano
Publicado por: sysfactory en 18 Julio 2013, 00:59 am
Hola amigos
tengo este problema
necesito llamar a un ejecutable que lleva un  parametro
desde un dispositivo motorola es400 con windows mobile
el programa esta en visual estudio 2008 pero leyendo
me dicen que el comando shell no funciona en los mobiles
la verdad estoy azul si alguien sabe se lo agradecere muchisimo

este es mi codigo

 Dim ProcID As Integer
        Dim FilePath As System.String = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetExecutingAssembly().GetModules(0).FullyQualifiedName) & "\gTimeSync.exe -u"

       
        Try

            ProcID = Shell("\\" & FilePath, AppWinStyle.Hide)
    '  MessageBox.Show("File Path(A): " & FilePath & " ok")
            Beep()
        Catch ex As Exception
            ' MessageBox.Show("File Path(A): c:" & FilePath & " Error: " & ex.Message)
            Lblx.Text = ProcID
        End Try

       


Título: Re: ejecutar un bat en segundo plano
Publicado por: Eleкtro en 18 Julio 2013, 01:31 am
@sysfactory

1. No se reviven temas de hace 5 años para formular una pregunta, crea un nuevo post.

2. Debes hacerlo en la sección correcta, VB.NET no es un lenguaje de Scripting.

3. Al postear un código debes usar el tag para insertar código.

Puedes usar la Class Process para reemplazar a la función Shell:
Código
  1. Process.Start("Exe", "Argumentos")

Cierro el tema,
Saludos.