Ola pessoas tenho um metodo que imprimi em uma impressora, ela estando local funciona na porta lpt1 normal porem n consigo imprimir na rede alguem sabe como imprimir na rede??
veja
FileOutputStream os = null;
String porta = "LPT1";
try {
os = new FileOutputStream(porta);
PrintStream ps = new PrintStream(os);
ps.println("Q320,019");
[quote=samuelM]certo mapiei usando o net use e agora no printStream coloco o que como porta? o caminho do mapeamento da impressora é este
T:\\192.168.0.20\\HPLaserJ
[/quote]
a maneira correta de se mapear impressoras na rede é esta aqui, veja.
net use LPT1: \\hostname(ip)\compartilhamento_impressora /yes
//em Java vc poderia fazer
Runtime.getRuntime().exec("net use LPT1: \\hostname(ip)\compartilhamento_impressora /yes");
Runtime.getRuntime().exec("dir > lpt1"); //aqui faz um teste enviando uma pagina de teste pra impressora mapeada
Caso isso nao funcione, vc pode criar seu Runtime dessa maneira.
Runtime.getRuntime().exec("cmd /c net use LPT1: \\hostname(ip)\compartilhamento_impressora /yes"); //passando o cmd
Depois basta mandar imprimir em LPT1 q ja vai sair a impressao no hostname ou ip q vc passou. Veja como eu fiz no link q mandei no meu primeiro post, nele eu imprimo direto sem ser pela rede, mas basta vc usar o Runtime pra fazer seu mapeamento.
cara ja esta tudo certo, o unico problema esta como disse acima em qual porta mandar!! ja estou mapeando corretamente a lpt1 porem no printStream n sei o que colocar na porta, mapiei da maneira que voce me falou ja
net use LPT1: \\192.168.0.62\\zebradb /yes
mas n sei o que colocar no parametro porta veja:
FileOutputStream os = null;
String porta = "?????????";
try {
os = new FileOutputStream(porta);
PrintStream ps = new PrintStream(os);
ps.println("N");
ps.println("testando o printStream");
ps.println("P1");
ps.close();
ja falei, se vc mapeou a porta LPT1 entao so pode mandar pra ela, isso é um fato.
tente ir no cmd e digitar “dir > lpt1”, se esta mapeada corretamente vai mandar a lista de diretorios de onde vc mandou.
Se esta mandando em branco é pq vc esta fazendo o PrintStream errado, veja o link do exemplo que mandei no primeiro post, nele eu mando um arquivo.txt inteiro.