Estimados
Estoy desarrollando un programa para hacer backup de mis bases. El tema es que para que se ejecute el comando .bat en windows he tenido que colocar un cmd /c start en la linea del Runtime.getRuntime().exec(). Lo cual abre una ventana DOS que luego no puedo cerrar, y por cada vez que se ejecuta el el programa queda una ventana abierta. Quisiera evitar esto ya que el proceso se corre en un servidor y no estoy constantemente viendo esto. Paso parte del código para ver si alguien puede ayudarme,
Gracias
if(selectGuardarBack == 1) {
//Runtime rt = Runtime.getRuntime();
try {
String comando="\""+Ruta+"\" --opt --user="+Login+" --password="+Passwd+" "+Base+" >\""+rutaFile+"\"\n";
File fcopi=new File("c:\\"+directorioBackup+"\\"+nombreDia+"\\"+" copia_seguridad.bat");
FileWriter fw = new FileWriter(fcopi);
fw.write(comando,0,comando.length());
fw.close();
//Ejecuto el comando con los parametros del backup
try {
Thread.sleep(5000);
}catch (Exception e) {
e.printStackTrace();
}
Runtime.getRuntime().exec("cmd /k start c:\\"+directorioBackup+"\\"+nombreDia+"\\"+"copia_ seguridad.bat"+" cmd /c exit");
Runtime.getRuntime().exec("cmd /k exit"); //NO FUNCIONA
System.out.println("TERMINADO");
}catch(IOException ex) {
System.err.println("Error al ejecutar el Comando exec()");
ex.printStackTrace();
}
}