Los codigos que aqui mencionan me ayudaron mucho ya que yo queria hacer lo mismo que ustedes: ejecutar un bat desde java, ahora bien tambien tuve complicaciones como algunos compañeros de aqui, entre ellas la que no me regresara el control a mi clase, como lo solucione?
Bueno muy sencillo al final de su archivo o fichero (he visto españoles aqui jejeje) .bat, agreguen el comando
exit con eso terminara retornara el control a la clase. ejemplo:
echo "archivo bat"
dir C:\*
exit
Saludos y suerte
Cita:
Iniciado por timie Buenas,
Mi problema es el siguiente:
Tengo una aplicación de ventanas que ejecuta un .bat como aqui se esta comentando, hasta aqui todo perfecto, pero un a vez k termina de ejecutar el .bat, la aplicación de ventanas se queda colgada, y tengo que cerrarla desde el administrador de tareas. Como hago para que una vez ejecutado el .bat el programa continue con su ejecución?
Pongo aqui el metodo que uso para ejecutar el comando:
Código:
public void ejecutarComando(String comando) {
try
{
Runtime rt = Runtime.getRuntime();
System.out.println("Execing " + comando);
Process proc = rt.exec(comando);
// any error message?
StreamGobbler errorGobbler = new
StreamGobbler(proc.getErrorStream(), "ERROR");
// any output?
StreamGobbler outputGobbler = new
StreamGobbler(proc.getInputStream(), "OUTPUT");
// kick them off
errorGobbler.start();
outputGobbler.start();
// any error???
int exitVal = proc.waitFor();
System.out.println("ExitValue: " + exitVal);
rt.runFinalization();
}
catch (Throwable t)
{
t.printStackTrace();
}
}
Saludos y gracias por vuestra ayuda