PDA

View Full Version : info su come utilizzare eseguibili in java...


Dark Davide
01-07-2002, 15:37
dovrei attivare un comando all'interno di un programma java, ma con il metodo exec non riesco a combinare nulla...

infatti subito dopo la linea di codice:

Process child = Runtime.getRuntime().exec("echo ciao")

il programma termina inesorabilmente senze nessun messaggio di errore.
Ovviamente non è che mi interessa stampare a video "ciao", il problema è che non funziona con qualsiasi comando!!

X caso ho sbagliato qualcosa???

Grazie
Davide

/\/\@®¢Ø
01-07-2002, 22:33
"echo" non e' il nome di un file eseguibile ma di un comando della shell. Di conseguenza ( e il discorso vale per tutti i comandi come cd, del etc. ) devi chiamare esplicitamente la shell
ad esempio sotto win9x sarà "command /c echo ciao" e sotto nt,win2k,xp "cmd /c echo ciao"

Dark Davide
02-07-2002, 18:33
niente da fare... ho compilato in C il classico "hello World" e ho cercato di eseguire l'exe ottenuto.
Stavolta il programma java non si blocca e continua l'esecuzione, inoltre child.exitValue() restituisce 0, come se tutto fosse fosse stato eseguito correttamente... ma ahimè a video non si vede nulla.

sob :(

/\/\@®¢Ø
02-07-2002, 19:16
Questo succede perchè il file eseguito non ha accesso diretto all'output su schermo
con un metodo opportuno ( non mi ricordo quale ) puoi ottenere gli stream su cui effettivamente il programma chiamato legge/scrive. Dovrai quindi leggere manualmente l'output e stamparlo su schermo

Dark Davide
03-07-2002, 12:35
beh allora sono proprio nei guai dato che la mia intenzione originale non era quella di stampare un file di testo, ma era quella di eseguire un file che setta la corrente nei pin della porta parallela... ho già provato a richiamarlo da java ma non funziona e non credo si possa risolvere manualmente a questo problema.