Direcionamento da LPT1 em Habrour
Moderador: Moderadores
- Cavalo Marinho
- Usuário Nível 3

- Mensagens: 156
- Registrado em: 01 Ago 2009 10:01
- Localização: Aracaju/Se
Direcionamento da LPT1 em Habrour
Boa noite pessoal
Para qual arquivo e onde o harbour joga a impressão quando direcionamos para LPT1:
Explicando melhor, quando o soft é compilado em clipper e o sistema envia um arquivo para LPT1 é criado um arquivo de nome PRNSPL na pasta C:\USERS\NOMEDOSUSUARIO\PRNSPL (windows 7) é assim que o spool do windows enviar este arquivo para impressora ou o DOSPRN que imprime para uma impressora USB sabe capturar este arquivo e envia para impressora que está conectada na usb e configurada do DOSPRN, acontece que no harbour não funciona deste jeito, quando enviamos para LPT1 e não tem impressora nesta porta o sistema simplesmente trava e não cria o arquivo como em clipper, fiz um teste em clipper e em harbour, quando rodo compilado no clipper é criado o arquivo PRNSPL mas em harbour não.
Alguém tem uma luz? assim posso configurar o DOSPRN para capturar na pasta onde o arquivo é criado.
Para qual arquivo e onde o harbour joga a impressão quando direcionamos para LPT1:
Explicando melhor, quando o soft é compilado em clipper e o sistema envia um arquivo para LPT1 é criado um arquivo de nome PRNSPL na pasta C:\USERS\NOMEDOSUSUARIO\PRNSPL (windows 7) é assim que o spool do windows enviar este arquivo para impressora ou o DOSPRN que imprime para uma impressora USB sabe capturar este arquivo e envia para impressora que está conectada na usb e configurada do DOSPRN, acontece que no harbour não funciona deste jeito, quando enviamos para LPT1 e não tem impressora nesta porta o sistema simplesmente trava e não cria o arquivo como em clipper, fiz um teste em clipper e em harbour, quando rodo compilado no clipper é criado o arquivo PRNSPL mas em harbour não.
Alguém tem uma luz? assim posso configurar o DOSPRN para capturar na pasta onde o arquivo é criado.
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
- Cavalo Marinho
- Usuário Nível 3

- Mensagens: 156
- Registrado em: 01 Ago 2009 10:01
- Localização: Aracaju/Se
Direcionamento da LPT1 em Habrour
Obrigado por responder
Acontece que converti meus sistema para harbour em modo console, não estou querendo mexer neles, está em fase de desenvolvimento uma versão em minigui, mais ainda vai demorar para ficar pronto, então preciso anda trabalhar no modo antigo, utilizando o DOSPRN para impressoras USB.
Acontece que converti meus sistema para harbour em modo console, não estou querendo mexer neles, está em fase de desenvolvimento uma versão em minigui, mais ainda vai demorar para ficar pronto, então preciso anda trabalhar no modo antigo, utilizando o DOSPRN para impressoras USB.
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7929
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
Direcionamento da LPT1 em Habrour
A explicação pode ser usada em qualquer situação. CUI ou GUI. (Console Interface) ou (Graphical User Interface)Acontece que converti meus sistema para harbour em modo console,
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7929
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
Direcionamento da LPT1 em Habrour
Não precisa saber como funciona, as coisas assim do modo que vc está querendo saber, quem souber e quiser explicar ai, beleza.
O que vc precisa saber é que não é necessário usar o DOSPRN, nem set device to lpt1, nem preocupar-se como a impressora está instalada LPT1, USB etc...
Apenas mude a direção do seu antigo sistema(lpt1/com1/etc) para um arquivo qualquer(disco->"prn") e use hb_PrintFileRaw() p/ imprimir em qualquer impressora em qualquer porta, em qualquer lugar da rede.
Saudações,
Itamar M. Lins Jr.
O que vc precisa saber é que não é necessário usar o DOSPRN, nem set device to lpt1, nem preocupar-se como a impressora está instalada LPT1, USB etc...
Apenas mude a direção do seu antigo sistema(lpt1/com1/etc) para um arquivo qualquer(disco->"prn") e use hb_PrintFileRaw() p/ imprimir em qualquer impressora em qualquer porta, em qualquer lugar da rede.
Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.
- Cavalo Marinho
- Usuário Nível 3

- Mensagens: 156
- Registrado em: 01 Ago 2009 10:01
- Localização: Aracaju/Se
Direcionamento da LPT1 em Habrour
Boa tarde a todos
Amigos estou tentando fazer uns testes com printfileraw() e getdefaultprinter() mas não consigo compilar pois não encontro estas duas funções referenciadas, já setei set lib para a pasta do harbour etc, qual arquivo de lib.a que encontra-se estas duas funções?, :%
Utilizo minigui extend com mingw, preciso da lib com extensao .a
Desde já fico agradecido
Amigos estou tentando fazer uns testes com printfileraw() e getdefaultprinter() mas não consigo compilar pois não encontro estas duas funções referenciadas, já setei set lib para a pasta do harbour etc, qual arquivo de lib.a que encontra-se estas duas funções?, :%
Utilizo minigui extend com mingw, preciso da lib com extensao .a
Desde já fico agradecido
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
Direcionamento da LPT1 em Habrour
Olá!
É necessário linkar a lib HbWin. Coloque no teu arquivo .Hbp uma linha contendo -lHbWin
É necessário linkar a lib HbWin. Coloque no teu arquivo .Hbp uma linha contendo -lHbWin
[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)
- Cavalo Marinho
- Usuário Nível 3

- Mensagens: 156
- Registrado em: 01 Ago 2009 10:01
- Localização: Aracaju/Se
Direcionamento da LPT1 em Habrour
Boa noite AlxSts
Já tem esta linha ono meu .hbp, mas mesmo assim dar um erro que não encontra as funções referidas no post anterior
Veja o conteúdo do meu arquivo teste.hbp,
-hbexe
-mt
-inc
-gtwvg
-lhbwin
-oTeste
TESTE.PRG
Já tem esta linha ono meu .hbp, mas mesmo assim dar um erro que não encontra as funções referidas no post anterior
Veja o conteúdo do meu arquivo teste.hbp,
-hbexe
-mt
-inc
-gtwvg
-lhbwin
-oTeste
TESTE.PRG
-
alxsts
- Colaborador

- Mensagens: 3092
- Registrado em: 12 Ago 2008 15:50
- Localização: São Paulo-SP-Brasil
Direcionamento da LPT1 em Habrour
Olá!
O Itamar utiliza a HwGui. Você não usa. Então, nos exemplos do outro tópico, troque todas as chamadas à função hwg_Msgstop() pela função Alert().
Ainda naquele tópico, no post que contém o código da função PrintWinPrn(cArq,cPrint), existe uma constante manifesta (FORM_A4) mas não temos o arquivo include (.ch) que a define. Por enquanto, troque por um valor inteiro e teste (isto é chute). Talvez o Itamar poste o conteúdo deste arquivo .ch.
Quanto ao resto, seria muito mais fácil e objetivo ajudar se você postasse as mensagens de erro que são geradas na compilação.
O Itamar utiliza a HwGui. Você não usa. Então, nos exemplos do outro tópico, troque todas as chamadas à função hwg_Msgstop() pela função Alert().
Ainda naquele tópico, no post que contém o código da função PrintWinPrn(cArq,cPrint), existe uma constante manifesta (FORM_A4) mas não temos o arquivo include (.ch) que a define. Por enquanto, troque por um valor inteiro e teste (isto é chute). Talvez o Itamar poste o conteúdo deste arquivo .ch.
Quanto ao resto, seria muito mais fácil e objetivo ajudar se você postasse as mensagens de erro que são geradas na compilação.
[]´s
Alexandre Santos (AlxSts)
Alexandre Santos (AlxSts)
- Itamar M. Lins Jr.
- Administrador

- Mensagens: 7929
- Registrado em: 30 Mai 2007 11:31
- Localização: Ilheus Bahia
- Curtiu: 1 vez
Direcionamento da LPT1 em Habrour
Isso porque na época que foi criado esses exemplos, não tinha a devida organização.
O correto(melhor) é:
Saudações,
Itamar M. Lins Jr.
O correto(melhor) é:
Código: Selecionar todos
#include "hbwin.ch"
//Trocar FORM_A4 por WIN_DMPAPER_A4
oPrn : FormType := WIN_DMPAPER_A4 //FORM_A4
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Itamar M. Lins Jr.