ola pessoal
Alguém sabe como faço para enviar comandos para uma impressora via lpt1? O programa que fiz compila e não gera exceção, mas a impressora não imprime (o programa também não dá aviso de erro).
O código está abaixo:
import javax.comm.<em>;
import java.util.</em>;
import <a href="http://java.io">java.io</a>.<em>;
import javax.swing.</em>;
/**
*
-
@author rodrigo.pinto
*/
public class Paralela {Enumeration listaDePortas; String portas[]; String codigoImpressao; OutputStream saida; ParallelPort portaParalela; int timeout = 1000; int baudrate = 57600;
/** Creates a new instance of Paralela */ public Paralela() { listaDePortas = CommPortIdentifier.getPortIdentifiers(); int i = 0; portas = new String[4]; while (listaDePortas.hasMoreElements()) { CommPortIdentifier ips = (CommPortIdentifier)listaDePortas.nextElement(); portas[i] = ips.getName(); if (ips.getPortType() == CommPortIdentifier.PORT_PARALLEL) JOptionPane.showMessageDialog(null, "porta paralela: " + portas[i]); i++; }
try{ FileReader ptrETQ = new FileReader(new File("C:\\paralela\\ETQ.TXT")); CommPortIdentifier cp = CommPortIdentifier.getPortIdentifier("LPT1"); portaParalela = (ParallelPort)cp.open("Paralela", timeout); portaParalela.setMode(ParallelPort.LPT_MODE_SPP); saida = portaParalela.getOutputStream(); while (true){ int k = ptrETQ.read(); if(k == -1) break; System.out.print((char) k); saida.write((char) k); } //saida.flush(); //DEVE SER USADO COM A IMPRESSORA CONECTADA AO PC saida.close(); ptrETQ.close(); System.out.println("Mensagem enviada"); } catch (NoSuchPortException nspe){ JOptionPane.showMessageDialog(null, "Não foi possível encontrar a porta desejada. ERRO " + nspe.getMessage(), "Mensagem do sistema", JOptionPane.ERROR_MESSAGE); } catch (PortInUseException piue){ JOptionPane.showMessageDialog(null, "Porta solicitada está em uso.ERRO " + piue.getMessage(), "Mensagem do sistema", JOptionPane.ERROR_MESSAGE); } catch(IllegalStateException ise){ JOptionPane.showMessageDialog(null, "Tipo de porta desconhecida.ERRO" + ise.getMessage(), "Mensagem do sistema", JOptionPane.ERROR_MESSAGE); } catch(UnsupportedCommOperationException ucoe){ JOptionPane.showMessageDialog(null, "Operação não suportada. ERRO " + ucoe.getMessage(), "Mensagem do sistema", JOptionPane.ERROR_MESSAGE); } catch (IOException ioe){ JOptionPane.showMessageDialog(null, "Não foi possível fechar a porta\nou arquivo de impressão não foi encontrado. ERRO " + ioe.getMessage(), "Mensagem do sistema", JOptionPane.ERROR_MESSAGE); } catch(Exception e){ JOptionPane.showMessageDialog(null, "Ocorreu um erro inesperado. ERRO " + e.getMessage(), "Mensagem do sistema", JOptionPane.ERROR_MESSAGE); e.printStackTrace(); }
}
public static void main (String args[]){ System.out.println(“Enviando a mensagem pela paralela”); Paralela p = new Paralela(); System.exit(0); }
}
Espero que alguém possa me ajudar.
valew!