Bom dia (eu de novo, ja to me sentindo um inutil kkk).
Meu programa manda imprimir uma String. Só que quando rodo o programa em computadores que não tem impressora instalada na porta LPT1 o sistema trava. Lógicamente que o sistema só vai rodar onde tem impressora, mas queria fazer com que ele não travasse e eu conseguisse tratar isso.
publicstaticvoidimprimeLPT1(Stringstr){try{//-----------FileOutputStreamfs=newFileOutputStream("LPT1:");str=cleanString(str);PrintStreamps=newPrintStream(fs);ps.println(str);ps.println();fs.close();ps.close();}catch(IOExceptionex){JOptionPane.showMessageDialog(null,"Erro encontrado ao imprimir comanda."+ex.getMessage());}catch(Exceptione){JOptionPane.showMessageDialog(null,"Exceção! "+e.getMessage());}}
isso acontece pq o sistema está esperando a resposta da impressora
faça uma thread para disparar a impressao
arielss
Marlon Meneses:
isso acontece pq o sistema está esperando a resposta da impressora
faça uma thread para disparar a impressao
Certo, implementei através da Thread.
Funcionou.
Só estou com dúvida pois quando fechei o programa, o processo javaw.exe continou em execução. Antes de eu implementar a thread o processo era finalizado.
Isso é normal?
sergiotaborda
arielss:
Marlon Meneses:
isso acontece pq o sistema está esperando a resposta da impressora
faça uma thread para disparar a impressao
Certo, implementei através da Thread.
Funcionou.
funcionou mas não está certo. Vc está deixando a thread travada ( por isso que o programa não fecha)
O que vc tem que fazer é descobrir se existe a impressora e se ela existe ai vc envia os dados
para decobrir as impressores use a Java Print API
arielss
sergiotaborda:
arielss:
Marlon Meneses:
isso acontece pq o sistema está esperando a resposta da impressora
faça uma thread para disparar a impressao
Certo, implementei através da Thread.
Funcionou.
funcionou mas não está certo. Vc está deixando a thread travada ( por isso que o programa não fecha)
O que vc tem que fazer é descobrir se existe a impressora e se ela existe ai vc envia os dados
para decobrir as impressores use a Java Print API
Obrigado, vou realizar os testes e volto aqui para mostrar o resultado e/ou mais dúvidas, rs.