Página 35 de 51
Enviado: 08 Out 2007 16:10
por Maligno
sygecom escreveu:o jeito é usar o xharbour mesmo com a classe win32prn
Não estamos tentando encontrar um método que permita imprimir sem erros. Estamos querendo descobrir qual erro
da WAPI deve ser corrigido para que nela se possa imprimir normalmente. Observe
o título deste tópico.
Enviado: 08 Out 2007 16:19
por sygecom
Apenas é uma opinião....
Enviado: 08 Out 2007 16:28
por Maligno
É sempre válida a opinião de qualquer um, mas note que o Sérgio já disse que utiliza o programa do Heveraldo (USB.EXE) com sucesso. Se tivesse lido do princípio, teria percebido qual é o foco da discussão.
Enviado: 08 Out 2007 16:30
por sygecom
ok
Enviado: 19 Out 2007 03:10
por Maligno
asimoes escreveu:Vi que você tem uma biblioteca chamada WAPI.
Eu baixei os fontes, depois de muito custo consegui chegar no SUCESSO e a biblioteca foi criada: tamanho dela: 67072kb
Mesmo tamanho da biblioteca que eu compilei.
Se você já tiver a biblioteca wapi.lib pronta, você poderia mandar para o meu email:
asimoesluz@gmail.com
Mas o pacote ZIP, que provavelmente você pegou do meu site, já contém o arquivo WAPI.LIB pronto.
Aprinter:=GetPrinters() <-- Aqui acontece o erro.
Qual é o erro exatamente? Há um texto descritivo, imagino. Ou não?
Enviado: 19 Out 2007 03:43
por asimoes
Maligno,
Quando eu executo a wapi.exe no prompt wapi -getprinters:teste
Me retorna:
0,PrimoPDF,PrimoPort:
0,Microsoft Office Document Image Writer,Microsoft Document Imaging Writer Port:
1,hp1310,USB001
Quando eu chamo a função getprinters() me retorna 1, inclusive na função SetaImp(), que já foi postado no forum dá erro quando é atribuido ao veto.r
Estou usando clipper 5.2e
Blinker 7.0
Modo protegido.
O wapi.lib tem o tamnho 67072kb
O que pode estar errado?
Obrigado.
Enviado: 19 Out 2007 04:01
por Maligno
asimoes escreveu:Quando eu executo a wapi.exe no prompt wapi -getprinters:teste
Me retorna:
0,PrimoPDF,PrimoPort:
0,Microsoft Office Document Image Writer,Microsoft Document Imaging Writer Port:
1,hp1310,USB001
Em linha de comando, tudo bem. Esse é um típico retorno. Está normal. A impressora default é uma HP1310.
Quando eu chamo a função getprinters() me retorna 1
Você quer dizer que o retorno de GetPrinters(), ao invés de ser uma matriz, como esperado, é um dado numérico, cujo valor é 1?
E quanto ao erro em si, qual é a mensagem do erro? Ele ocorre exatamente naquela linha em que você executa GetPrinters()?
Enviado: 19 Out 2007 07:34
por asimoes
Exatamente, a função me retorna 1, que não é vetor.
Veja o meu script de linkedição:
BLINKER INCREMENTAL OFF
BLINKER OVERLAY PAGEFRAME ON
BLINKER EXECUTABLE SERIAL SC v2007.10
BLINKER EXECUTABLE CLIPPER //F:200 //DYNF:8 //INFO
BLINKER EXECUTABLE COMPRESS 1
BLINKER EXECUTABLE EXTEND
FI SC0000
OU SC
FI SC0101
FI SC0201
FI SC0202
FI SC0301
FI SC0401
FI TIMESLIC
LIB SCFUNC
LIB FAST52
LIB APIBLI
LIB DBFCDX
FI CTUSP,ERROS
LIB OSLIB
LIB CPMI
LIB VL2_52
LIB CTP52
SEARCH BLXCLP52
LIB WAPI
Maligno escreveu:asimoes escreveu:Quando eu executo a wapi.exe no prompt wapi -getprinters:teste
Me retorna:
0,PrimoPDF,PrimoPort:
0,Microsoft Office Document Image Writer,Microsoft Document Imaging Writer Port:
1,hp1310,USB001
Em linha de comando, tudo bem. Esse é um típico retorno. Está normal. A impressora default é uma HP1310.
Quando eu chamo a função getprinters() me retorna 1
Você quer dizer que o retorno de GetPrinters(), ao invés de ser uma matriz, como esperado, é um dado numérico, cujo valor é 1?
E quanto ao erro em si, qual é a mensagem do erro? Ele ocorre exatamente naquela linha em que você executa GetPrinters()?
Enviado: 19 Out 2007 11:04
por Maligno
Uma experiência: coloque a WAPI como a primeira LIB na sua lista. Tente de novo e me diga qual o resultado.
Enviado: 19 Out 2007 20:07
por asimoes
Maligno,
Fiz o que você recomendou.
No meu código fiz um teste chmando a função GetPrinters()
? GetPrinters()
INKEY(0)
Quando eu executo o meu programa me retorna o seguinte erro:
D:\CDX\SC>sc
Clipper (R) 5.2e Intl. (Rev. 216) BRITISH - ASCII Collation
DS=0297:0000 DS avail=4KB OS avail=1023KB
(0) Unrecoverable error 667: Eval stack fault
(Fixed heap=0KB/0)VMZÉ
Maligno decobri uma coisa, a fastlib que eu uso tem uma função com o mesmo nome: GetPrinter() e ela retorna 0 ou 1, eis a função:
GetPrinter()
Gets printer state
Syntax:
GetPrinter( [nPrinter] ) -> nStatus
nPrinter : Printer Number. 0 = LPT1, 1 = LPT2...
Defect verify the printer 0
Description:
Determines if the printer is ready, out of paper, if is off or there
is no printer.
Return:
A number indicating the printer state over the next list.
Eu removi a biblioteca fast52.lib do meu script e mesmo assim quando executo me retorna o erro acima.
Maligno escreveu:Uma experiência: coloque a WAPI como a primeira LIB na sua lista. Tente de novo e me diga qual o resultado.
Enviado: 19 Out 2007 21:47
por Maligno
a fastlib que eu uso tem uma função com o mesmo nome: GetPrinter() e ela retorna 0 ou 1
Aha!!! Pois era essa a minha desconfiança. Você colocou a WAPI em primeiro na lista do seu script e agora deu erro de "eval stack fault"? É isso? Se sim, tentou aumentar o "stack" no BLinker?
Se bem que eu sou muito cabreiro com esse negócio de aumentar o tamanho da pilha. Nunca fiz isso na vida e nunca tive qualquer problema.
Aliás, teria você alguma função recursiva perdida por aí?
Enviado: 19 Out 2007 23:30
por asimoes
Maligno,
eu tentei usando o stack 512
Não deu o erro, mas também a função na me retornou nada.
Maligno escreveu:a fastlib que eu uso tem uma função com o mesmo nome: GetPrinter() e ela retorna 0 ou 1
Aha!!! Pois era essa a minha desconfiança. Você colocou a WAPI em primeiro na lista do seu script e agora deu erro de "eval stack fault"? É isso? Se sim, tentou aumentar o "stack" no BLinker?
Se bem que eu sou muito cabreiro com esse negócio de aumentar o tamanho da pilha. Nunca fiz isso na vida e nunca tive qualquer problema.
Aliás, teria você alguma função recursiva perdida por aí?
Enviado: 19 Out 2007 23:32
por asimoes
Você se refere a recursiva:
Você diz, funções com o mesmo nome das que fazem parte da wapi.lib?
a resposta é não.
Enviado: 19 Out 2007 23:42
por asimoes
Maligno,
Eu mudei a lib para o final e funcinou, vou testar a impressão para ver qual é.
Qualquer novidade eu posto :)Pos
Maligno,
Continuo com o:
(0) Unrecoverable error 667: Eval stack fault
Enviado: 20 Out 2007 01:52
por Maligno
asimoes escreveu:Você se refere a recursiva:
Você diz, funções com o mesmo nome das que fazem parte da wapi.lib?
a resposta é não.
Uma função é dita recursiva quando executa ela própria. Acontece que, havendo algum descontrole no código, a função pode chamar ela própria muitas vezes. Aí o "eval stack fault" é certo.