PrintFileRaw

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

Moderador: Moderadores

paiva_dbdc
Usuário Nível 3
Usuário Nível 3
Mensagens: 342
Registrado em: 12 Nov 2012 09:58
Localização: uberlandia mg

PrintFileRaw

Mensagem por paiva_dbdc »

BOA tarde
estou mandando imprimir numa epson USB num W10

PrintFileRaw(pprt,arq)
aparece la sendo enviado +++ nao imprime nada
o que pode ser ?
bstefani13
Usuário Nível 1
Usuário Nível 1
Mensagens: 2
Registrado em: 25 Out 2017 16:58
Localização: Ubatuba/SP

PrintFileRaw

Mensagem por bstefani13 »

Já enfrentei a mesma situação, em determinado terminal com o windows 10 o comando PrintFileRaw não funcionou, mas nos outros terminais sim.

Não sei ao certo o motivo, talvez tenha alguma coisa relacionada a usuários/permissões, pois funcionava quando a impressão vinha de outro terminal.

Resolvi o problema substituindo o PrintFileRaw() por ShellExecute(cArq,'Print'), mas só funcionou para arquivos com extensão '.txt'

Espero que ajude
Avatar do usuário
Itamar M. Lins Jr.
Administrador
Administrador
Mensagens: 7928
Registrado em: 30 Mai 2007 11:31
Localização: Ilheus Bahia
Curtiu: 1 vez

PrintFileRaw

Mensagem por Itamar M. Lins Jr. »

Ola!
A impressão RAW sem tratamento nenhum, não é aceito(a) por todo o tipo de impressora.
Outro problema que encontro é incompatibilidade DRIVERS versões diferentes, M$ e fabricante e entre versões de windows XP/7/10, 32 x 64...

O que é o Protocolo RAW ?
Protocolo RAW é uma das línguas comuns de computador que os documentos sejam traduzidos para e , em seguida, enviados para uma impressora de rede. A impressora interpreta o protocolo e imprime o documento.
Finalidade
Protocolo RAW é usado quando um usuário de computador seleciona para imprimir um documento que é mais do que um documento baseado em texto simples. Os dados no arquivo de impressão é traduzido em forma de protocolo RAW , o que pode ser entendido pela impressora. É a configuração de idioma impressora padrão para a maioria dos sistemas não executando o Windows XP Professional ou Windows 2000.
Use
Quando um usuário seleciona a opção de impressão de um documento , o computador abre um protocolo de transferência de TCP /IP para localizar a impressora Depois que a impressora for encontrado, as verificações de protocolo TCP /IP para obter detalhes sobre o dispositivo e todos os drivers que ele usa e retransmite os detalhes de volta para o computador. O computador acessa as informações do driver necessário e cria uma versão do protocolo RAW do documento com os detalhes para a impressora. Uma vez escrito , o protocolo TCP /IP transporta o arquivo RAW protocolo para a impressora. A impressora interpreta o arquivo RAW e imprime os dados.

Drivers
O computador não pode criar um arquivo RAW protocolo, se ele não tem os drivers corretos instalados. Drivers são específicos para o sistema operacional da impressora e computador.
Outros problemas
Motivo
Esse problema ocorre porque a GDI (Graphics Device Interface) não compacta dados de varredura ao processar e gerar arquivos de spool EMF.

Esse problema é muito comum em impressoras com suporte para resoluções mais altas. O tamanho dos dados de varredura aumentará quatro vezes se a configuração de dpi (pontos por polegada) no arquivo aumentar duas vezes. Por exemplo, um arquivo. pdf de 1 megabyte (MB) pode gerar um arquivo de spool EMF de 500 MB. Portanto, é possível que você perceba uma diminuição no desempenho do processo de impressão.
https://support.microsoft.com/pt-br/hel ... ou-print-a

Saudações,
Itamar M. Lins Jr.
Saudações,
Itamar M. Lins Jr.
Avatar do usuário
JoséQuintas
Administrador
Administrador
Mensagens: 20267
Registrado em: 26 Fev 2007 11:59
Localização: São Paulo-SP

PrintFileRaw

Mensagem por JoséQuintas »

Itamar M. Lins Jr. escreveu:Por exemplo, um arquivo. pdf de 1 megabyte (MB) pode gerar um arquivo de spool EMF de 500 MB. Portanto, é possível que você perceba uma diminuição no desempenho do processo de impressão.
Curioso é que notei esse aumento ao usar a impressora PDF do Windows, mas remota.
Do Windows Server usei a impressora PDF da minha máquina, e o PDF ficou gigante, foi até rejeitado para ser enviado por email.
O mesmo PDF, aberto localmente e enviado novamente pra impressora PDF, reduziu em muitas e muitas vezes.

O Windows server que usei é do tempo do W7, vai terminar o suporte também no ano que vém.
Desse jeito então... o W10 acaba sendo o melhor negócio...
José M. C. Quintas
Harbour 3.2, mingw, gtwvg mt, fivewin 25.04, multithread, dbfcdx, MySQL, ADOClass, PDFClass, SefazClass, (hwgui mt), (hmg3), (hmg extended), (oohg), PNotepad, ASP, stored procedure, stored function, Linux (Flagship/harbour 3.2)
"The world is full of kings and queens, who blind our eyes and steal our dreams Its Heaven and Hell"

https://github.com/JoseQuintas/
paiva_dbdc
Usuário Nível 3
Usuário Nível 3
Mensagens: 342
Registrado em: 12 Nov 2012 09:58
Localização: uberlandia mg

PrintFileRaw

Mensagem por paiva_dbdc »

BOM dia

Bstefani13 fiz das seguintes formas e não faz nada.

fiz de forma errada ?

a = ppath + [\] +alltrim(pusuario) + '.txt'

*PrintFileRaw(pprt,a) && FUnciona para qq Matrical Paralela ou por USB

ShellExecute(a,&pprt)

ShellExecute(a,&pprt)

ShellExecute(a,'EPSON LX-300+ /II')


Para resolver o problema pego o TXT e mando imprimir usando a winprn32 (de forma grafica)

Obrigado
Avatar do usuário
rubens
Colaborador
Colaborador
Mensagens: 1520
Registrado em: 16 Ago 2003 09:05
Localização: Nova Xavantina - MT

PrintFileRaw

Mensagem por rubens »

Bom dia..

Paiva instalou o drive da Epson (do Fabricante)?

Tive o mesmo problema (inclusive abri um tópico aqui um tempo atrás)

Com o driver que o windows encontra e instala não imprime... mesmo sintoma aí...
mas quando instala o driver da epson.. resolve o problema...

Testa aí para ver...

Rubens
"Eu e minha casa servimos ao Senhor e você ???"
bstefani13
Usuário Nível 1
Usuário Nível 1
Mensagens: 2
Registrado em: 25 Out 2017 16:58
Localização: Ubatuba/SP

PrintFileRaw

Mensagem por bstefani13 »

Ola, apenas completando a informação.

Para imprimir na impressora padrão, pode-se utilizar:

ShellExcute( 'c:\Pasta\Arquivo.txt', 'Print' )

Para comandos mais avançados utilizando shellexecute, procure outros exemplos ou consulte o pessoal aqui no fórum.

Espero que ajude.
Responder