Página 1 de 2

PrintFileRaw() não funciona na LX-350

Enviado: 15 Set 2017 11:26
por lugab
Bom dia, amigos, preciso de ajuda...

Acabei de comprar uma matricial Epson LX-350 pra substituir a LX300 que queimou.
A função PrintFileRaw() é executada sem apresentar erro, porém nada vai pra impressora...
Já a função ImpWinPrint() imprime normalmente, mas não me atende

Uso Hb20 + borland 5.5 e também já tentei o HB30 . O que se pode fazer ?
Código fonte

Código: Selecionar todos

aPrn[nPrn],"C:\EST.DOC", Tnomusu)
e
ImpWinPrint(aPrn[nPrn],"C:\EST.DOC")	 

PrintFileRaw() não funciona na LX-350

Enviado: 15 Set 2017 12:51
por Itamar M. Lins Jr.
Ola!
Cadê o código ?
Isso que postou não significa muita coisa para ser analisada.

Outra coisa, Harbour 2.0 e 3.0 ninguém vai verificar isso se for BUG será corrigido na 3.2 ou 3.4 por isso é bom testar na na versão atual.
Aqui funciona, se serve de consolo, eu uso a 3.4

Saudações,
Itamar M. Lins Jr.

PrintFileRaw() não funciona na LX-350

Enviado: 15 Set 2017 15:24
por lugab
Obrigado, Itamar...

Infelizmente as versões do Harbour superiores a 3.0 não são mais acompanhadas das libs e .Ch pra quem compilar em modo console...

Mas o código ta perfeito, a PrintFlieraw() funciona normal em matricias FX e LX30, o problema é essa danada de LX350

Mas eu não parei esperando e enquanto não surgir alguma idéia, eu to convertendo os relatório pra ImpWinprint(), são mais de 40

Um forte abraço e muito grato pelo interesse em ajudar

PrintFileRaw() não funciona na LX-350

Enviado: 15 Set 2017 15:53
por Itamar M. Lins Jr.
Ola!
Infelizmente as versões do Harbour superiores a 3.0 não são mais acompanhadas das libs e .Ch pra quem compilar em modo console...
Como diz o Jorge Tadeu lá do "fantástico"! Que isso RAPAZ ?!
Como assim ? não entendi nada.
As Libs e Ch's vem sim, compila em modo console sem problema nenhum.

Saudações,
Itamar M. Lins Jr.

PrintFileRaw() não funciona na LX-350

Enviado: 15 Set 2017 16:00
por rubens
Metendo a colher de pau no meio...
A que libs você se refere? Qual a limitação você tem de mudar para o hb 3.2?

Rubens

PrintFileRaw() não funciona na LX-350

Enviado: 15 Set 2017 17:48
por lugab
Ah ta. Me refiro a essas libs (e respecitivo .CH) abaixo.
Não achei em links de harbour e de Bcc nenhum e olha que eu baixo todos os links que de vez em quando os amigos postam aqui no fórum

xhb.lib
hbrtl.lib
gtwvg.lib
hbvm.lib
hblang.lib
hbct.lib
hbmacro.lib
hbrdd.lib
hbcommon.lib
hbpp.lib
hbwin.lib
hbtip.lib
hbsix.lib\
gtwin.lib
rddcdx.lib
rddntx.lib
rddfpt.lib
hbpcre.lib
cw32.lib
import32.lib\

PrintFileRaw() não funciona na LX-350

Enviado: 15 Set 2017 20:16
por Itamar M. Lins Jr.
Ola!
Neste caso vc está usando o BCC e o hbmaker, bem antigo.
O Harbour 3.2 roda no BCC 7.2. Não aconselho usar o BCC, mude para Mingw, é só baixar o Harbour 3.4.
Tudo ai irá funcionar 100%
Quando passar a usar hbmk2 para compilar, vai ver a diferença e simplicidade que é.
Deixe o serviço de identificar as libs e compilar tudo por conta do hbmk2 e ele ainda irá avisar quando faltar algo.
cw32.lib, import32.lib, essas são do BCC, não precisa mais disso.
Usando Mingw(GCC) as libs tem a parte final da extensão diferente.
xhb.lib -> libxhb.a
hbrtl.lib -> libhbrtl.a
gtwvg.lib -> libgtwvg.a
hbvm.lib -> libhbvm.a e libhbvmmt.a para Multithreading
hblang.lib -. libhblang.a
hbct.lib -> libhbct.a
hbmacro.lib -> libhbmacro.a
hbrdd.lib -> libhbrdd.a
hbcommon.lib -> libhbcommon.a
hbpp.lib -> libhbpp.a
hbwin.lib -> libhbwin.a
hbtip.lib -> libhbtip.a
hbsix.lib -> libhbsix.a
gtwin.lib -> libgtwin.a
rddcdx.lib -> librddcdx.a
rddntx.lib -> librddntx.a
rddfpt.lib -> librddfpt.a
hbpcre.lib -> libhbpcre.a
...
E várias outras que as versões antigas não tem


http://pctoledo.com.br/forum/viewtopic.php?f=43&t=17565
Leia este tópico, preste atenção na explicação do Hazael mais embaixo.

Saudações,
Itamar M. Lins Jr.

PrintFileRaw() não funciona na LX-350

Enviado: 16 Set 2017 08:47
por rubens
Bom dia...
Você pode fazer também como eu faço para não ter que mudar muita coisa. Use o harbour 3.2 da Minigui Extends. Ele ainda usa o BCC e vai poder usar suas libs...
O Caminho do Itamar é o inevitável mas emergencial pode fazer o que falei. Baixa a HMGs que tem a pasta harbour nela que ainda usa o BCC. Daí você pode usar todos ou quase todos os recursos do HB3.2 sem muitar muito o jeito que programa.

Só vai ter que ajustar os paths.
Link para baixar o HMGS http://hmgextended.com/files/CONTRIB/hm ... -setup.exe

Daí eu crio um bat com o seguinte conteúdo:

Código: Selecionar todos

@echo off
SET PATH=%PATH%;c:\Borland\BCC55\BIN;c:\MINIGUI\HARBOUR\BIN
SET HB_PATH=c:\minigui;
set MG_BCC=c:\Borland\bcc55
C:
CD\%SystemRoot%\system32\cmd.exe
Rubens

PrintFileRaw() não funciona na LX-350

Enviado: 16 Set 2017 23:24
por lugab
Obrigado, Itamar e Rubens...


Rubens, Usando a sua sugestão de baixar/instalar HMGS e executar o path novo

1) como deve ser o bat pra compilar essa lista abaixo ?
2) em qual pasta essa compilação deve ser executada ?
PROG1(MAIN)
PROG2
PROG3
LIB1
LIB2
LIB3
etc

Grato

PrintFileRaw() não funciona na LX-350

Enviado: 17 Set 2017 08:31
por rubens
Bom dia Gabriel...

Não sei como você compila hoje... no hb32 salva o link de compilação dentro de um arquivo hbp e executa o comando hbmk2 arquivo.hbp.
No exemplo que to te enviando você executa o bat que passei no tópico anterior, vai na pasta do seu programa e digita hbmk2 sistema_gabriel.hbp e pronto.
Eu uso tela cheia independente do windows. o próprio programa coloca em tela cheia e fica somente a barra do windows abaixo do programa conforme figura abaixo. Dá um olhada no treco de código:

No hbp que tô te mandando tá comentado com // só para você entender... tem que removê-las depois porque não sei se elas são para comentário mesmo. Não está com a descrição exata e didática de cada item mas acho que vai entender o meu Caipirês aí.. depois dá uma pesquisada para ver a descrição de cada item.

Código: Selecionar todos

#include "hbgtinfo.ch"
REQUEST HB_GT_WVT_DEFAULT

Function Main() 

	HB_GtInfo(HB_GTI_WINTITLE, 'DATASAC - Sistema de Automação Comercial' )
	HB_GtInfo(HB_GTI_RESIZEMODE, HB_GTI_RESIZEMODE_FONT ) //* aumenta o tamanho da letra proporcionalmente *
	HB_GtInfo(HB_GTI_FONTNAME, "Lucida console" ) 
	Hb_GTInfo(HB_GTI_MOUSESTATUS, 0 )     // Desabilitar o mouse
	hb_gtinfo(HB_GTI_MAXIMIZED, .T.)      // Executar maximizado
	HB_GtInfo(HB_GTI_RESIZABLE, .F. )     // desabilitar o redicionamento da janela
	HB_GtInfo(HB_GTI_ALTENTER, .T. )      // Pode usar ALT+ENTER para alternar tela cheia e janela
	HB_GtInfo(HB_GTI_ICONFILE, 'MDV.ICO' ) // Define o ícone da janela
	HB_GtInfo(HB_GTI_CLOSABLE, .F.)        // Desabilita fechar a janela com o clicando no X
	...
	
	Return nil 
Tela Datasac.png
Está em janela... se pressionar ALT+ENTER fica tela cheia... Aqui tá no Windows 10..

Renomeie o arquivo sistemahbp_gabriel.prg para sistemahbp_gabriel.hbp (o site não aceitou extensão hbp)
Rubens

PrintFileRaw() não funciona na LX-350

Enviado: 17 Set 2017 08:44
por asimoes
Lugab,

Insistir em investir tempo para atualizar para 3.4 com gcc (mingw) vai te poupar dores de cabeça e manter atualizado com as inovações da versão.

Fiz isso quando sai do xharbour (a muito tempo) fui para 3.2 e agora 3.4 (a muito tempo), não tenho problemas. Agora é só receber $$$$ do meu cliente, eu é que invento o que fazer, rs.

PrintFileRaw() não funciona na LX-350

Enviado: 17 Set 2017 09:51
por Itamar M. Lins Jr.
Ola!
1) como deve ser o bat pra compilar essa lista abaixo ?
2) em qual pasta essa compilação deve ser executada ?
Se escolhesse ir por outro caminho, mais pessoas poderiam te ajudar.
EVITE a todo custo se afastar dos desenvolvedores principais, evitando assim cair em armadilhas do tempo, que eles mesmos não irão te ajudar.
É uma facilidade, que num futuro pode trazer problemas. Essa "facilidade" é só porque a distribuição do MINIGUI vem com o Mingw evitando fazer 2 downloads.
Continua usando BCC 5x. e tudo indica que ele será descontinuado do Harbour principal.
E outra coisa ainda mais importante. Se for um BUG isso que vc está enfrentando, o pessoal da MINIGUI não irá resolver. Só o pessoal do Harbour o Marek, Viktor, Przemek é que corrigem a HBWIN que é a LIB que está dando problema ai na versão 2.x e 3.0.

Não tem dificuldade lá no manual do José Quintas,
Respondendo as perguntas.
1) Não tem BAT nenhum, esqueça isso o HBMK2 simplesmente sabe onde está tudo, o hbmk2 só olha o seu PATH.
2) Qualquer pasta em qualquer lugar o HBMK2 procura pelo PROJETO do HARBOUR. Vc cria o projeto com qualquer editor simples.

Código: Selecionar todos

PROG1(MAIN)
PROG2
PROG3
LIB1
LIB2
LIB3
Basta criar um arquivo com a extensão HBP com esses arquivos ai de cima. CASO a lib1,lib2,lib3 sejam suas LIBS, se for do Harbour ou do CONTRIB do Harbour, nem se preocupe em informar ele sabe quais são as libs principais e já linka tudo.
Tem pessoas que dizem para nos concentramos "APENAS" nos nossos PROGRAMAS e CLIENTES. Já li aqui várias vezes isso. DEVEMOS saber quem são as pessoas que estão, neste caso, mantendo o Harbour vivo. Não é o pessoal da Fivewin, Minigui, HWGUI, etc. Neste momento, apenas 2 pessoas estão dando continuidade no Harbour e todos nós precisamos prestar mais atenção nas informações que vem deles.

Saudações,
Itamar M. Lins Jr.

PrintFileRaw() não funciona na LX-350

Enviado: 17 Set 2017 20:47
por lugab
Obrigado de verdade a Itamar, Rubens e Asimoes, deu tudo certo...

Rubens,
eu já consegui compilar no HB32 sem esforço nenhum, graças ao seu passo-a-passo

Itamar,
agora eu vou fundo na sua orientação para me atualizar, achei que a sua dica sobre a postagem do Hazael foi soberba.

Toledo, grato, de coração, por esse fórum maravilhoso

PrintFileRaw() não funciona na LX-350

Enviado: 18 Set 2017 14:16
por rubens
Boa tarde...
eu já consegui compilar no HB32 sem esforço nenhum, graças ao seu passo-a-passo
Que bom Gabriel, agora o tempo de refazer 40 relatórios sobra para investir nas pesquisas sugeridas...
Infelizmente existem situações emergenciais que nos obrigam a não fazer o melhor mas o que é necessário no momento.

Rubens

PrintFileRaw() não funciona na LX-350

Enviado: 26 Set 2017 08:33
por rubens
Bom dia..
Gabriel...
Você está com a LX-350?

Conseguiu imprimir na LX-350 com a PrintFileRaw() ou Win_PrintFileRaw()

Surgiu esse problema para mim em um cliente de outra cidade...
Se manda pela Win_PrintFileRaw() não gera erro mas tb não imprime na impressora.
Se manda pelo Windows (notepad) imprime normalmente.

Obrigado
Rubens