Cliiper no XP imprimir direto na impressora padrao

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

Sergio Cabral
Usuário Nível 2
Usuário Nível 2
Mensagens: 52
Registrado em: 18 Set 2004 18:51
Localização: São José dos Campos

Clipper52

Mensagem por Sergio Cabral »

Baixei o Clipper5.2e e mudei meu .BAT de compilação para Clipper52e mas dá erro "CANNOT READ RTLINK.DAT HEADER"
Por favor me informe o que estou fazendo errado?
Sou programador em Clipper 5.01 a 15 anos e procuro melhorar meus conhecimentos. Este site me parece muito bom e poderemos nos ajudar.
Avatar do usuário
Eolo
Colaborador
Colaborador
Mensagens: 1134
Registrado em: 08 Dez 2005 18:24
Localização: São Paulo - SP

Mensagem por Eolo »

Se o Clipper estava por exemplo na pasta c:\CLIPPER e vc a alterou para C:\CLIPPER5, sem corrigir o PATH, dá encrenca mesmo.

Confirme o caminho do Clipper...
. (Win98) no comando PATH do arquivo c:\autoexec.bat
. (Winxp) em Variáveis de Ambiente.
Sergio Cabral
Usuário Nível 2
Usuário Nível 2
Mensagens: 52
Registrado em: 18 Set 2004 18:51
Localização: São José dos Campos

Clipper52

Mensagem por Sergio Cabral »

Já havia feito exatamente assim quando instalei o 5.2e e não funcionou.
Sou programador em Clipper 5.01 a 15 anos e procuro melhorar meus conhecimentos. Este site me parece muito bom e poderemos nos ajudar.
Avatar do usuário
Eolo
Colaborador
Colaborador
Mensagens: 1134
Registrado em: 08 Dez 2005 18:24
Localização: São Paulo - SP

Mensagem por Eolo »

A seguir, o que EU tenho setado para o Clipper no WinXP. Compare com o que vc tem.

. arquivo c:\windows\system32\autoexec.nt:
SET INCLUDE=C:\CLIPPER5\INCLUDE;C:\CATOOLS\INCLUDE
SET LIB=C:\CLIPPER5\LIB;C:\CATOOLS\LIB
SET OBJ=C:\CLIPPER5\OBJ;C:\CATOOLS\OBJ
SET PLL=C:\CLIPPER5\PLL;C:\CATOOLS\PLL
set clipper=F200

. arquivo c:\windows\system32\config.nt:
files=200
BUFFERS=30

. PATH (em variáveis de amvbiente)
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\NG;c:\clipper5\bin

Se o erro que está dando é o ERT0084:
. o DAT está corrompido ou
. não está na pasta certa C:\clipper5\bin ou
. a pasta \BIN não está no PATH...
Avatar do usuário
Eolo
Colaborador
Colaborador
Mensagens: 1134
Registrado em: 08 Dez 2005 18:24
Localização: São Paulo - SP

Mensagem por Eolo »

Ah, dê uma pensada em trocar o RTLINK pelo BLINKER.
Dê uma pesquisada aqui no forum, vc vai ver as referências a isso e também achar o BLinker7 para baixar.
Avatar do usuário
Gilberto M Silva
Usuário Nível 3
Usuário Nível 3
Mensagens: 230
Registrado em: 13 Mar 2007 18:00
Localização: Natal-RN / Parelhas(RN) / Natal(RN)
Contato:

Mensagem por Gilberto M Silva »

eu tentei compilar com o blinker7 mais deu estouro de memoria convencional, como faço para aumentar a memória convencional?? :-o
Gilberto[]
A cada conversasão realizada conquistamos mais amigos, isto é um lucro inestimável
Clip5.2 DBFCDX
marcolinosilva@click21.com.br gmarcolinosilva@hotmail.com / Skype:gilberto.marcolino
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Mensagem por Maligno »

Você não prefere usar o modo protegido? É muito melhor que o modo real, onde normalmente dá esse tipo de erro de falta de memória. No modo protegido o seu programa passa a utilizar toda a memória que sua sessão DOS tiver, que tem como efeito colateral, o alívio do disco, já que, havendo muita memória, os swaps pra disco são (ou deveriam ser) totalmente eliminados. E não havendo swaps, o programa tem sua velocidade incrementada.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Marsenne
Usuário Nível 1
Usuário Nível 1
Mensagens: 16
Registrado em: 14 Fev 2008 14:14
Localização: Brasília

LPT_TIMEOUT

Mensagem por Marsenne »

Nunca modifique o LPT_TIMEOUT do registro do windows que tem como padrão 15. Não está em segundos. Acredite já testei e não tem nada de segundos. Passar para o valor 1 nem pensar. Assim seus programas de impressão ficarão perdidos quando uma rotina longa faz a a impressora aguardar (principalmente as de impacto e jato de tinta). Também, para um valor pequeno sua máquina local e tráfego de rede deve ser muito rápidos.

A solução para impressão imediata com o clipper no xp é somente uma e funciona perfeitamente com meus sistemas:

... iniciando a impressão

SET DEFAULT TO ' se o default não é na máquina local
SET PRINTER TO LPT1
SET DEFAULT TO \\MAQ\COMPART 'volta seu default padrão

SET DEVICE TO PRINTER
... aqui os comandos de impressão do tipo @ SAY

... finalizando a impressão (não é necessário usar o SET DEFAULT TO)
SET PRINTER TO
SET DEVICE TO SCREEN

O segredo para funcionar é o SET DEFAULT TO quando seu banco de
dados não está na máquina local. Se não utilizar o clipper assume que
a LPT1 está em outra máquina e não funcionará.
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Re: LPT_TIMEOUT

Mensagem por Maligno »

Marsenne escreveu:SET PRINTER TO
SET DEVICE TO SCREEN

O segredo para funcionar é o SET DEFAULT TO quando seu banco de
dados não está na máquina local. Se não utilizar o clipper assume que
a LPT1 está em outra máquina e não funcionará.
Nunca usei SET DEFAULT na vida. Minhas impressões são sempre em LPT (apesar de usar mais o spooler agora) e nunca travaram. A única coisa que uso pra despachar a impressão na hora é o SET PRINTER TO. Em Windows 98 (que aqui ninguém mais usa) e Windows XP funciona normal.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Marsenne
Usuário Nível 1
Usuário Nível 1
Mensagens: 16
Registrado em: 14 Fev 2008 14:14
Localização: Brasília

LPT_TIMEOUT

Mensagem por Marsenne »

É porque você mantém o banco de dados na mesma máquina do executável. Quando está em um servidor é necessário utilizar o SET DEFAULT TO \\SERVIDOR\COMPARTILHAMENTO. O clipper por padrão abre os arquivos de dados no path local da aplicação. Se for isto realmente não é necessário utilizar o SET DEFAULT TO.
Avatar do usuário
sygecom
Administrador
Administrador
Mensagens: 7131
Registrado em: 21 Jul 2006 10:12
Localização: Alvorada-RS
Contato:

Mensagem por sygecom »

Marsene, ou pode tmb. mapear a unidade ou uma pasta compartilhada no windows que funciona tmb.
Leonardo Machado
xHarbour.org + Hwgui + PostgreSql
Avatar do usuário
Maligno
Membro Master
Membro Master
Mensagens: 6398
Registrado em: 06 Jul 2004 01:40
Localização: Londrina/PR

Re: LPT_TIMEOUT

Mensagem por Maligno »

Marsenne escreveu:É porque você mantém o banco de dados na mesma máquina do executável. Quando está em um servidor é necessário utilizar o SET DEFAULT TO \\SERVIDOR\COMPARTILHAMENTO. O clipper por padrão abre os arquivos de dados no path local da aplicação. Se for isto realmente não é necessário utilizar o SET DEFAULT TO.
Não. Tenho os dois casos, com os dados no servidor e na máquina onde está o EXE. Na execução em rede, o drive é mapeado e o prompt passa para o drive dos dados. O EXE é executado ou no mesmo drive dos dados ou em outro, local. Não faz diferença. O funcionamento é igual e a impressão transcorre normalmente.
Aliás, um detalhe: eu nunca uso endereçamento implícito. Sempre explicito o local dos dados, omitindo apenas o drive. Isso evita um monte de problemas e me dá um conforto: não me faz diferença alguma onde o prompt está, desde que esteja no drive dos dados.
[]'s
Maligno
---
Não respondo questões técnicas através de MP ou eMail. Não insista.
As dúvidas devem ser postadas no fórum. Desta forma, todos poderão
se beneficiar das respostas.

---
Se um dia precisar de uma transfusão de sangue você perceberá como
é importante a figura do doador. Procure o hemocentro de sua cidade e
se informe sobre a doação de sangue, plaquetas e medula óssea. Doe!
Avatar do usuário
Clipper
Colaborador
Colaborador
Mensagens: 1334
Registrado em: 23 Ago 2004 00:04
Localização: Recife/PE

Re: LPT_TIMEOUT

Mensagem por Clipper »

Marsenne escreveu:Nunca modifique o LPT_TIMEOUT do registro do windows que tem como padrão 15. Não está em segundos. Acredite já testei e não tem nada de segundos. Passar para o valor 1 nem pensar
Prezado Marsenne

Creio que esteja enganado quanto a isso, modificar o valor dessa chave para 1, resolve sim na maioria dos casos a lentidão que ocorre quando eviamos impressões via rede, essa é uma prática que utilizo como padrão em meus clientes, quando a chave está com o valor 15 a impressão geralmente demora cerca de 1 minuto, já com a chave em 1 a impressão é quase que imediata. Agora, quanto a imprimir na impressora local realmente não faz diferença alguma se for 1 ou 15.

Vejamos o que diz a Microsoft.
Microsoft escreveu: LPT_timeout
HKLM\SYSTEM\CurrentControlSet\Control\WOW
Data type Range Default value
REG_SZ
Number of seconds
15

Description
Determines how long an MS-DOS-based application can keep an LPT port open after use. When the time open after use exceeds the value of this entry, the system closes the port and deletes its output. Limiting the time a port can remain open limits the effect of MS-DOS-based applications that use BIOS and do not close the port.
Pelo que eles dizem é sim estabelecido em segundos.

Até logo.

Marcelo
Programador que é programador, quando tá de folga vai inventar função nova, fazer testes, ou seja... se divertir
Cobra 210 - Drive de 8" 1.024 KB - 64 KB RAM - Impressora de Linha Cobra - Visicalc - Fortran - Dialog - Sistema Operacional SP/M (é sp/m mesmo - era o cp/m da cobra)
screbinsk
Usuário Nível 1
Usuário Nível 1
Mensagens: 4
Registrado em: 03 Ago 2004 09:29
Localização: Dom Pedrito - RS

Re: Muito boa essa dica !

Mensagem por screbinsk »

Adalberto escreveu:Sergio,

¿Passar de clipper 5.1 para clipper 5.2 não e só compilar?, em quanto a lentidão da impressora pode testar o seguinte:
Faz o que diz Pablo César no post e link (5 de dez ) e execute script abaixo:

(Este script e ajuda e colaboração deste foro, Obrigado)
Vá para o Botão INICIAR
Selecione EXECUTAR
e digite REGEDIT
SELECIONE AS OPCOES
KHEY_LOCAL_MACHINE
SYSTEM
CURRENTCONTROLSET
CONTROL
WOW
AGORA DO LADO DIREITO DA JANELA
SELECIONE LPT_TIMEOUT
ALTERE DE 15 PARA 0 ou 1 (zero 0 um)
Olá estava eu aqui neste famoso forum, pesquisando para tentar resolver um problema o qual estou me deparando o qual vou citar logo abaixo:
Meu sistema estava rodando num Win98 muito bem, só que quando migrei para o win xp professional, ele imprimia os relatórios perfeitamente na impressora lx300+ (padrão). Mas a impressao das notas fiscais tinha um problema. Ele começava a imprimir e na metade da NF. ele dava uma trancada na impressão e depois de 15 segundos ele seguia imprimindo o restante do documento. Estava fazendo sempre a mesma coisa. Deduzi q só poderia ser problema na configuração do win xp ou da impressora. Através desta dica do colega, ai de cima, consegui resolver o meu problema. Espero que possa ajudar a mais alguém. Valeu pessoal !
Responder