tenho um programa aqui que em algumas vezes raras ele finaliza sozinho, e o erro sempre aponta para uma @$#@%$ de DLL que o cara usou no programa e tirou toda a portabilidade do java.
Eu queria saber se existe alguma coisa para detectar quando esse programa finaliza…
Comece um processo e coloque um aviso depois de waitFor, se ele acabar a próxima linha de waitFor vai ser executada… 8)
Process p = Runtime.getRuntime().exe("programa.exe");
p.waitFor();
System.out.println("Finalizou");
marcos.junqueira
Blz, isso resolve parcialmente meu problema…
fiz esse código que me passou como uma Thread, porém o programa executado fica lento.
É preciso que seja uma Thread, quero que o prório programa detecte se ele foi finalizado ou não.
alguma sugestão?
até mais…
klarq
Se eu entendi bem, você nãp precisa de uma thread pois p.waitFor() é um thread e só permitirá ir para a próxima linha se o processo terminar.
marcos.junqueira
Não, isso eu sei…
É o seguinte: eu executo o meu programa.exe (é um launcher para o java) ai a classe que contém o método main é executada.
Para eu utilizar o p.waitFor() no meu main, eu precisaria que ele permitisse passar para a próxima linha.
Eu preciso detectar quando o meu próprio programa termina