View Full Version : Eseguire un .bat in java
Ciaio a tutti!
Ho un piccolo problema da risolvere in linguaggio java.
Desidero che mediante una qualche istruzione o comando direttamente nel main dell'applicativo possa aprire un file .bat contenuto all'interno della cartella stessa in cui viene eseguito il programma.
Qualora non sia chiaro il problema diciamo che ho semplicemente bisogno di conoscere come si apre ed esegue un .BAT.
Grazie 1000 anticipatamente!
Avrei un bisogno impellente di saperlo...
mi serve entro dopodomani...:rolleyes:
ho semplicemente bisogno di conoscere come si apre ed esegue un .BAT.
Runtime.getRuntime().exec("C:\xd.bat");
Runtime.getRuntime().exec("C:\xd.bat");
Grazie per la risposta.
Ho provato con l'istruzione sopra descritta ma nonostante me lo compili il programma non viene avviato...
Poichè desidero che sia a collegamento dinamico ed il file si trova nella stessa cartella del .class e .java ho fatto così:
Runtime.getRuntime().exec("PIPPO.bat");
Ho sbagliato qualcosa?
Devo fare qualcos'altro oltre questo?
Inoltre per essere un po' più chiaro il mio preblema consiste nel fatto che desidero poter chiudere il programma in esecuzione e riaprirlo in maniera automatica.
Avevo intenzione di far ciò richiamando il programma PIPPO.bat da PIPPO.bat già in esecuzione, e quindi aprendone due, per poi chiudere il primo.
Mi spiace se la faccio complicata...:stordita:
Anche perchè sono alle prime armi con java...:fagiano:
scusa mi sono sbagliato ... prova con Runtime.getRuntime().exec( "cmd /C start "+this.getClass().getResource("xd.bat").toString());
banryu79
27-01-2008, 16:50
Ma con il .bat che tipo di processo lanci? Perchè in certi casi bisogna catturare l'outputstream e l'errorstream del processo per "consumarne" i flussi dati degli stream appena citati, pena il non funzionamento corretto a runtime.
(causa saturazione dei buffer)
Però prova lo stesso, se ti dà problemi a runtime controlla che non sia per il motivo che ho appena descritto ;)
banryu79
28-01-2008, 11:05
Ciao, non so se ti serve ancora aiuto, però guarda questo link (http://ostermiller.org/utils/ExecHelper.html): punta a una classe "helper" che puoi usare per lanciare processi runtime dalla JVM e ti nasconde le complessità.
Nella pagina, sulla lista a sinistra, clicca su "Source" sotto la voce Exec Helper (http://ostermiller.org/utils/ExecHelper.java.html).
Ciao :)
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.