Clipper On Line • Ver Tópico - Win_PrintFileRaw() não funcionando
Mudar para estilo Clássico
Projeto Harbour - Compilador de código aberto compatível com o Clipper.
Postar uma resposta

Win_PrintFileRaw() não funcionando

05 Jul 2012 21:03

Tem algum detalhe a mais na função Win_PrintFileRaw() ?
Não consegui fazer imprimir por ela.
Com certeza, usando somente pra impressora matricial.

No programa:
Código:
Win_PrintFileRaw(Win_PrinterGetDefault(),mTmpFile,"JPA Relatorio " + m_Prog)


Por enquanto voltei matricial para o esquema anterior, apenas com o set printer to, e set device to print.

Obs.
Não tenho matricial aqui pra testar, mas clientes diferentes tiveram o mesmo problema, de não imprimir nada.
Cheguei a colocar a seleção de impressora, pra garantir que estava sendo usada a matricial, mas nem assim.
A seleção de impressora funciona, setar impressora também (dá pra ver pelo Windows que foi alterada).
E dá pra ver o relatório entrando no gerenciador de impressão do Windows (isso acompanhei aqui, com pdfcreator).
Só falta o principal: sair o relatório.
Ainda tenho quem use matricial, principalmente escritórios de contabilidade, pelo baixo custo da fita, e muitos relatórios.

Código:
Function SelecionaImpressora()
Local aPrinterList := {}, nOpc := 1, lCancel := .f.

aPrinterList := Win_PrinterList()
For nCont = 1 To Len(aPrinterList)
   If aPrinterList[nCont] == Win_PrinterGetDefault()
      nOpc := nCont
      Exit
   Endif
Next   
wAchoice(6,Int(MaxCol()/4),aPrinterList,@nOpc,"Impressora a utilizar")
lCancel := ( LastKey() == 27 )
If .Not. lCancel
   Win_PrinterSetDefault(aPrinterList[nOpc])
Endif   
Return lCancel

Win_PrintFileRaw() não funcionando

08 Jul 2012 14:24

Olá José,
Não tem segredo nem magia, porém existe uma limitação nessa função, ela apenas imprime em impressoras que dão suporte a impressão RAW, algumas impressoras jato de tinta e todas as LX-300+ que tem USB funciona, porem são por que tem suporte a impressão RAW.
Outro detalhe é que você tem que passar o caminho completo do arquivo TEXTO gerado pelo seu sistema, que no caso é sua variavel: mTmpFile

E considere pegar o retorno da impressora:
Alert( "Retorno: " + hb_ntos( WIN_PRINTFILERAW( cPrinter, cFileName, "testando impressão" ) ) )

Win_PrintFileRaw() não funcionando

09 Jul 2018 09:55

esse comando funciona em xHarbour ?? ou só em Harbour ...??

Win_PrintFileRaw() não funcionando

09 Jul 2018 10:26

Em xHarbour use:
Código:
         ...
         ...
         cPrinterName:='c:\temp\arquivo.txt'
         nResult := PrintFileRaw( cPrinterName, cFile, "Impressao Pelo Sistema" )
         IF nResult = -1
            cMsg = "Parametros inválido, 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

Win_PrintFileRaw() não funcionando

11 Jul 2018 10:36

Bom dia Amigos ..

eu gerei o arquivo texto e mandei imprimir... só que sai tudo desconfigurado ... alguem sabe onde eu errei ?? quando mando no NODOSIMP mostra certo ...
FUNCTION SELECT_PRINT(cARQTXT)

LOCAL nPrn:=1
LOCAL aPrn:= GetPrinters()
SETMODE(25,80)
CLS

IF EMPTY(cARQTXT)
Alert("Obrigatorio informar o arquivo")
quit
ENDIF

IF EMPTY(aPrn)
aOptions := { "SIM", "NAO" }
nChoice := Alert( "ATEN€ÇO !!! NÆo foi possivel localizar nenhuma impressora Instalada, Deseja Instalar uma Agora ?", aOptions, , 5)

DO CASE
CASE nChoice == 0
QUIT
CASE nChoice == 1
RunApplet_imp( "AddPrinter" )
CASE nChoice == 2
QUIT
ENDCASE
ENDIF

DO WHILE !EMPTY(nPrn)
CLS
@ 0,0 SAY 'Escolha uma impressora. ESC' +;
' para sair.'
@ 1,0 TO maxRow(),maxCol()
nPrn:= ACHOICE(2,1,maxRow()-1,maxCol()-1,aPrn,.T.,,nPrn)

IF !EMPTY(nPrn)
PrnTest(aPrn[nPrn], cARQTXT )
ENDIF
ENDDO

@ 22,00 say ""
RETURN(NIL)

Win_PrintFileRaw() não funcionando

11 Jul 2018 11:27

Bom dia...

Quintas em qual impressora e windows não está imprimindo ???
Porque se for na Epson LX-350 e Windows 10 só imprime se instalar o driver da própria Epson...

Rubens

Win_PrintFileRaw() não funcionando

12 Jul 2018 08:23

windows 7 .. impressora lx-300, epson l375, hp laser ....tentei em todas estas ... e gerando o arquivo e lendo pelo NODOSIMP mostra certinho .. porem quero imprimir em modo RAW usando essa ferramenta ..
Postar uma resposta