Usar impressora "não padrão"

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

edegar_metodo
Usuário Nível 1
Usuário Nível 1
Mensagens: 40
Registrado em: 19 Ago 2008 18:29
Localização: Colorado - Pr

Usar impressora "não padrão"

Mensagem por edegar_metodo »

talvez não tenha colocado o nome correto, mas vamos aos fatos:

existem varias opçoes para impressão na uSB, a que mais gostei e achei mais simples foi:

criar um arquivo com extensao .rtf e imprimir no wordpad (!wordpad /p relato.rtf)

acontece que ele utiliza a impressora "padrão" do windows.

como faço para usar outra impressora?

digo,
tenho 2 impressoras que usam formularios pre-impressos com tamanho direfente.

Edegar Rodrigues
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Re: Usar impressora "não padrão"

Mensagem por Maligno »

Uma vez que você imprimirá pelo WordPad, só vejo duas soluções: trocar a impressora no WordPad ou trocar a impressora default por meio de uma função especialmente preparada pra isso. Não acho o meio mais fácil.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
MARINI
Usuário Nível 3
Usuário Nível 3
Mensagens: 288
Registrado em: 06 Jul 2004 08:06
Localização: Pindamonhangaba SP

Re: Usar impressora "não padrão"

Mensagem por MARINI »

Se for Win XP ou VISTA:
Entre no Painel de Controle -> Impressoras e clique com o botáo direito do mouse na impressora escolhida e escolha a opção Definir como Impressora Padrão. Pronto.
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Re: Usar impressora "não padrão"

Mensagem por Maligno »

Acho que o que o colega deseja é algo um pouco mais prático que isso, Marini. Uma função dentro do Clipper, por exemplo.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
edegar_metodo
Usuário Nível 1
Usuário Nível 1
Mensagens: 40
Registrado em: 19 Ago 2008 18:29
Localização: Colorado - Pr

Re: Usar impressora "não padrão"

Mensagem por edegar_metodo »

Extamente amigo Maligno, a solução do Marini não resolve, pois terei mudado a impressora padrão, e o que preciso é imprimir sem alterar a mesma, como você disse (Não acho o meio mais fácil), pergunto então: na sua opnião qual o meio mais facil, lembrando que atualmente o sistema funciona 100%, quando finalizo o pedido ele pergunta: deseja imprimir o pedido: (e imprime na impressora de pedidos), ai pergunta os dados do boleto (e imprime os boletos)....simples não....
Ademir
Usuário Nível 3
Usuário Nível 3
Mensagens: 170
Registrado em: 31 Jul 2007 16:28
Localização: Porto Ferreira-SP

Re: Usar impressora "não padrão"

Mensagem por Ademir »

Olá... bom dia ! Se não me engano, o Prwin do Vagner faz isso. Vc pode escolher uma impressora para todos os relatórios, mesmo que não seja a padrão, ou então, escolher uma impressora diferente para cada relatório. Nesse caso, vc deverá indicar qual é a impressora dentro do seu programa. Essa segunda opção nunca testei, pois nunca precisei usar. Só uma pergunta: essas impressoras são paralelas ou USB ? Se forem paralelas, vc nem precisaria usar o PrWin.
Avatar do usuário
Pablo César
Usuário Nível 7
Usuário Nível 7
Mensagens: 5312
Registrado em: 31 Mai 2006 10:22
Localização: Curitiba - Paraná

Usar impressora "não padrão"

Mensagem por Pablo César »

Quando eu preciso selecionar a impressora conforme o relatorio, isto é, numa hora é numa em outra é em outra. Se o sistema/Clipper for em rede, você poderia guardar em arquivo o caminho de cada impressora para cada terminal. Eu acostumo ter um arquivo de impressoras em cada terminal no C: e mantenho o campo LOCAL onde guardo o caminho da impressora. Por exemplo: \\PC1\EPSON claro que cada impressora tem uma descrição. Daí quando for imprimir tal relatório (eu sei que relatório comuns vai para impressora "Padrão" e os recibos, tickets em impressora de bobina. Mas isto deixo previamente configurado. Sem a necessidade que o usuário tenha que escolher na hora de mandar a impressão.
Um clip-abraço !

Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Re: Usar impressora "não padrão"

Mensagem por Maligno »

edegar_metodo escreveu:na sua opnião qual o meio mais facil
Imaginando o ideal: dentro do programa, sem intervenção de programa externo, deixando o usuário apenas selecionar onde imprimir, o ideal seria que isso fosse feito por meio de algumas funções internas ao Clipper. Assim o usuário não precisaria sair do programa pra nada.

Se você não imprime em impressoras exclusivamente gráficas, no seu lugar eu usaria a biblioteca WAPI. Para imprimir basta direcionar a saída para um arquivo qualquer e chamar a função PrintFile(). Alguns exemplos simples:

Código: Selecionar todos

PrintFile("#","arq.txt")       // imprime pra impressora default
PrintFile("HP Laser","arq.txt" // imprime pra outra impressora,
                               // que não é a default
Simples e fácil.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
edegar_metodo
Usuário Nível 1
Usuário Nível 1
Mensagens: 40
Registrado em: 19 Ago 2008 18:29
Localização: Colorado - Pr

Re: Usar impressora "não padrão"

Mensagem por edegar_metodo »

maligno, gostei da ideia, mas gostaria de lembrar que o sistema ja esta funcionando com impressoras paralelas, preciso mudar para 2 impressoras usb...rs.... e se entendi bem vc disse que a funcao funciona apenas em modo texto, como fazer em modo grafico? digo usando impressoras usb?
qnt a ideia do ademir de usar o PRwin tem o detalhe do custo, (caso nao tenha outro modo....rs), lembrando que como ja disse o sistema ja funciona em impressoras paralelas, ja consegui alterar para imprimir em impressoras usb, mas ai esta o detalhe apenas para a impressora padrao,
agora se ajudar (ou complicar quem sabe..rs)
como disse eu criei um imprime.exe que fica aguardando o arquivo para ser impresso. este arquivo esta compilado com o xharbour (apenas em modo texto nao windows), poderia acrescentar uma variavel informando qual impressora e no xharbour teria como direcionar para outra impressora que nao fosse a padrao? assim o prog em clipper continuaria normal, apenas com uma variavel a mais e eu teria que melhorar minha funcao de impressao ou fazer uma outra em xharbour (tudo bem que ai eu teria que ir para o topico do xharbour, mas ja teria um caminho..)
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Re: Usar impressora "não padrão"

Mensagem por Maligno »

como fazer em modo grafico? digo usando impressoras usb?
Não. Impressora USB não precisa ser necessariamente gráfica. São alguns modêlos/marcas de impressoras que não têm tabelas de caracteres texto. Imprimem apenas gráficos. Nessas a WAPI não vai funcionar. Nas demais, sem problema. Sendo USB ou não. Como a WAPI usa o spool do Windows, o tipo da porta não faz diferença.
qnt a ideia do ademir de usar o PRwin tem o detalhe do custo
Não tem mais. O Vagner tornou o PRWin gratuito. Pode usar à vontade. Se o esquema do PRWin te servir, ótimo. Ele imprime em impressoras gráficas também.
poderia acrescentar uma variavel informando qual impressora e no xharbour teria como direcionar para outra impressora que nao fosse a padrao?
Se você já tem esse programa funcionando, adicionar uma variável seria fácil. Daí, pelo XHarbour você leria essa variável e redirecionaria pra outra impressora sem problema algum. É perfeitamente possível.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
edegar_metodo
Usuário Nível 1
Usuário Nível 1
Mensagens: 40
Registrado em: 19 Ago 2008 18:29
Localização: Colorado - Pr

Re: Usar impressora "não padrão"

Mensagem por edegar_metodo »

maligno, ja dizia o velho ditado ( a curiosidade matou o rato..rs),

depois de algumas buscas no forum, comecei a usar Win32Prn, mas apenas comecei e sei que estou no topico para clipper, mas acredito que uma resposta me basta

como disse ja tenho o arquivo .rtf (com a formatacao que preciso), agora basta imprimi-lo na Win32Prn, colocar linhas eu consegui, agora como coloco o arquivo inteiro, prontinho como esta e imprimindo no WordPad?

seria:?

nPrinter:=GetDefaultPrinter()
nArquivo:="recibo.rtf"
oPrinter: StartDoc(nPrinter,nArquivo)

ou o arquivo nao pode estar neste formato?

mais uma vez fico no aguardo e agradeco a compreensao

Edegar
Responder