Impressoras que não imprimem em Raw mode

Projeto [x]Harbour - Compilador de código aberto compatível com o Clipper.

Moderador: Moderadores

DLZ
Usuário Nível 3
Usuário Nível 3
Mensagens: 184
Registrado em: 09 Jun 2008 10:09
Localização: Ibirubá - RS - Brasil

Impressoras que não imprimem em Raw mode

Mensagem por DLZ »

Ola galera..
Utilizo o a função PrintFileRaw() para imprimir alguns relatórios. Utilizo essa função para tornar mais rápida a impressão, principalmente em impressoras matriciais. Me deparei com algumas impressoras que não imprimem quando executada essa função. Segundo informações que obtive, isso ocorre pelo fato da impressora ser "windows only", ou seja, só imprime textos gráficos.
A minha dúvida é a seguinte:
Existe alguma função ou comando que retorne se a impressora é "windows only" ou não ?
Um abraço ..
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Re: Impressoras que não imprimem em Raw mode

Mensagem por sygecom »

Buenas,
Eu tentei achar nesse sentido tambem mas o maximo que consegui foi o exemplo abaixo, e é como estou usando até hoje:

Código: Selecionar todos

*****************
Function CHAMAIMP
*****************
LOCAL cPrinterName, cPrinterPort, cCopias
LOCAL aPrn    := GetPrinters(.t.,.f.)
LOCAL nResult := -1
LOCAL cMsg    := ""

PARA TAM,cARQ   // S=136 N=79

IF TAM=Nil
   TAM="S"
ENDIF

If Empty(aPrn)
   OBRIGA11() // mensagem na tela que tem que ter
   Return
EndIf

IF !EMPTY(cARQ)
   cFILE := cARQ
ELSE
   MsgInfo("Não foi possivel Gerar arquivo de impressão, Tente Novamente.","Aviso do Sistema")
   Return
ENDIF

nPrn:=New_PRINTSETUP( @cPrinterName, @cCopias )

Private oDlgHabla:=nil
MsgRun("Aguarde, Imprimindo...")

for i=1 to len(aPrn)
   IF aPrn[i,1] = cPrinterName
      cPrinterPort = aPrn[i,2]
      exit
   ENDIF
next

IF cPrinterPort#Nil  
   IF LEFT(UPPER(cPrinterPort),3)="LPT"  // se estiver em uma LPT uso a PrintFileRaw()
      FOR nI := 1 TO cCopias
         nResult := PrintFileRaw( cPrinterName, cFile, "Impressao Pelo Sistema" )
         IF nResult = -1
            cMsg = "Parametros Invalido, Favor Tentar Novamente"
         ELSEIF nResult = -2
            cMsg = "Falha na chamada da Impressora, Favor Verificar a Impressora"
         ELSEIF nResult = -3
            cMsg = "Falha ao Iniciar Impressão, Favor Verificar a Impressora"
         ELSEIF nResult = -4
            cMsg = "Falha ao Iniciar a Primeira Pagina, Favor Verificar a Impressora"
         ELSEIF nResult = -5
            cMsg = "Falha de Memoria da Impressora, Favor Verificar a Impressora"
         ELSEIF nResult = -6
            cMsg = "Não foi Possivel localizar o arquivo de Impressão, Favor Tentar Novamente"
         ENDIF
         IF len(alltrim(cMsg)) > 1
            Fim_Run()
            MsgInfo(cMsg,"Aviso do Sistema")
            Return
         ENDIF
      NEXT
   ELSE
      IF TAM="S"
         IF !EMPTY(cPrinterName)
            Imprime(cFILE,136,cPrinterName,cCopias)  // imprime usando a WIN32PRN
         ENDIF
      ELSE
         IF !EMPTY(cPrinterName)
            Imprime(cFILE,80,cPrinterName,cCopias)  // imprime usando a WIN32PRN
         ENDIF
      ENDIF
   ENDIF
ENDIF
Fim_Run()
RETURN NIL

*****************
Function OBRIGA11
*****************
IF MsgYesNo("ATENÇÃO !!! Não foi possivel localizar Nenhuma impressora Instalada no Windows, Deseja Instalar uma Agora ?","Aviso do Sistema")
   RunApplet_imp( "AddPrinter" )
Endif
Return(Nil)

FUNCTION RunApplet_imp( cApplet ) //CONFIGURA IMPRESSORA NO WINDOWS
ShellExecute("rundll32.exe","open","shell32.dll, SHHelpShortcuts_RunDLL "+cApplet,"2")
RETURN Nil

Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Hasse
Usuário Nível 4
Usuário Nível 4
Mensagens: 820
Registrado em: 19 Out 2004 10:30
Localização: Jaraguá do Sul - SC

Re: Impressoras que não imprimem em Raw mode

Mensagem por Hasse »

Boa noite colegas.

Pode ser uma pergunta de bobo: Já fabricam impressoras matriciais "only for Windows" ?

Nunca tive um caso destes... e nem qualquer informação neste sentido.
Hasse
CP200 / CP500 / Basic / dBase III / dBase IV / Clipper Summer / RTlink / Exospace.
Clipper 5.3b / Blinker 7.0 / CDX com TAG
xHarbour 1.2.1-6604 / Borland C++ (5.5.1) 32 bit / HBmake.
Harbour 3.2.0dev (r1412121623) / MINGW / HBM2 / MiniGui HMG 3.1.4 / IDE (Roberto Lopez).
"Conheça todas as teorias, domine todas as técnicas, mas, quando tocares uma alma humana, seja apenas outra alma humana." (C.G.Jung)
lucimauro
Usuário Nível 3
Usuário Nível 3
Mensagens: 465
Registrado em: 21 Set 2004 21:02
Localização: Sobral-CE

Re: Impressoras que não imprimem em Raw mode

Mensagem por lucimauro »

Ja sim colega hasse,, eu ja tinve clientes que tinha umas lx-300 que nao funcionavao em DOS, mas isso faz muito tempo!
Hasse
Usuário Nível 4
Usuário Nível 4
Mensagens: 820
Registrado em: 19 Out 2004 10:30
Localização: Jaraguá do Sul - SC

Re: Impressoras que não imprimem em Raw mode

Mensagem por Hasse »

Boa tarde.

Será que não era alguma configuração ?

Acabei de baixar o Guia de Referência Técnica dela, e continua com emulação ESC/P, com 13 tabelas de caracteres internacionais, ou seja, ela é "for DOS".

Veja no link abaixo:
http://www.lprinters.com.br/2008/02/man ... x-300.html
Hasse
CP200 / CP500 / Basic / dBase III / dBase IV / Clipper Summer / RTlink / Exospace.
Clipper 5.3b / Blinker 7.0 / CDX com TAG
xHarbour 1.2.1-6604 / Borland C++ (5.5.1) 32 bit / HBmake.
Harbour 3.2.0dev (r1412121623) / MINGW / HBM2 / MiniGui HMG 3.1.4 / IDE (Roberto Lopez).
"Conheça todas as teorias, domine todas as técnicas, mas, quando tocares uma alma humana, seja apenas outra alma humana." (C.G.Jung)
lucimauro
Usuário Nível 3
Usuário Nível 3
Mensagens: 465
Registrado em: 21 Set 2004 21:02
Localização: Sobral-CE

Re: Impressoras que não imprimem em Raw mode

Mensagem por lucimauro »

é caro colega isso faz muito tempo,,talvez hoje eu fosse atras de descobrir porque nao imprimia sabe,,mais no tempo acho que alguem me falou que foi uma serie que saiu.
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Re: Impressoras que não imprimem em Raw mode

Mensagem por sygecom »

Até hoje todas as LX-300 que peguei pela frente está imprimindo com PrintFileRaw() , tanto LPT, SERIAL e USB.
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Responder