Tem como testar LPTx quando mapeado para o XP?
Moderador: Moderadores
Tem como testar LPTx quando mapeado para o XP?
Ola pessoal,
Sempre percebi que as funcoes ISPRINT() so testa a porta LPT1. Entao passei a usar a lib PRN_LPT.LIB para testar as portas LPT1...LPT3.
Fiz o mapeamento de rede buscando a impressora no micro q tem o XP e imprime normalmente porem se eu desligar a impressora e peço para imprimir de novo na impressora q esta no XP simplesmente aceita e nao retorna o status PORTA INVALIDA.
Tem alguma funcao q funcione corretamente quanto a isso no XP.
A funcao que eu uso é a: C_ISPRINT("LPT2",2,3).
Embora use a funcao não sei qual o significado dos parametros 2,3 se alguem puder esclarecer ficarei grato.
Até mais,
Sempre percebi que as funcoes ISPRINT() so testa a porta LPT1. Entao passei a usar a lib PRN_LPT.LIB para testar as portas LPT1...LPT3.
Fiz o mapeamento de rede buscando a impressora no micro q tem o XP e imprime normalmente porem se eu desligar a impressora e peço para imprimir de novo na impressora q esta no XP simplesmente aceita e nao retorna o status PORTA INVALIDA.
Tem alguma funcao q funcione corretamente quanto a isso no XP.
A funcao que eu uso é a: C_ISPRINT("LPT2",2,3).
Embora use a funcao não sei qual o significado dos parametros 2,3 se alguem puder esclarecer ficarei grato.
Até mais,
Clipper 5.2e / Blinker 5.1 / Harbour 3.2 / GTwvg
Veja o que consta no NG :
DESCRIPTION
C_ISPRINT() checks whether a specified port and the printer
attached to the port are ready for printing. This can be used to
check an LPT or a COM port and any printer (dot matrix, laser, etc.)
attached to it.
SYNTAX
C_ISPRINT(port [,delay] [,count])
PARAMETERS
port (C) is the name of the LPT or COM port number and the attached
printer to check. Specify one of the full port names as follows:
LPT1, LPT2, COM1, COM2, etc. If port is not specified, LPT1 is
checked.
delay (N) is the number of seconds to delay after checking a COM
port before checking it again. The delay parameter allows the wait
to be increased if a time-out keeps occurring on a COM device. If
delay is not specified, the default of 1 second is used.
count (N) is the number of times a COM port should be checked
before returning the status. The count parameter allows the times
to check to be increased if a time-out keeps occurring on a COM
device. If count is not specified, the default of 3 times is used.
RETURNS
C_ISPRINT() returns true (.T.) if the specified port and the
attached printer are ready for printing. C_ISPRINT returns false
(.F.) if the port is not ready or the printer is not ready.
EXAMPLES
Existe também a função C_ISLPT()
C_ISLPT()
DESCRIPTION
C_ISLPT() checks the specified LPT port to determine whether it is
ready to receive data.
NOTES
The C_ISLPT() function checks only the LPT port to determine if it
is ready. Depending on the type of printer connection, it may also
be necessary to check the printer itself to determine it's status.
SYNTAX
C_ISLPT(port)
PARAMETERS
port (N) is the LPT port number (1 = LPT1, 2 = LPT2, etc.) to check.
RETURNS
C_ISLPT() returns true (.T.) if the LPT port is ready, otherwise
false (.F.).
EXAMPLES
? c_islpt(1) --> .T. && LPT1 shows it is ready
Até logo.
Marcelo
DESCRIPTION
C_ISPRINT() checks whether a specified port and the printer
attached to the port are ready for printing. This can be used to
check an LPT or a COM port and any printer (dot matrix, laser, etc.)
attached to it.
SYNTAX
C_ISPRINT(port [,delay] [,count])
PARAMETERS
port (C) is the name of the LPT or COM port number and the attached
printer to check. Specify one of the full port names as follows:
LPT1, LPT2, COM1, COM2, etc. If port is not specified, LPT1 is
checked.
delay (N) is the number of seconds to delay after checking a COM
port before checking it again. The delay parameter allows the wait
to be increased if a time-out keeps occurring on a COM device. If
delay is not specified, the default of 1 second is used.
count (N) is the number of times a COM port should be checked
before returning the status. The count parameter allows the times
to check to be increased if a time-out keeps occurring on a COM
device. If count is not specified, the default of 3 times is used.
RETURNS
C_ISPRINT() returns true (.T.) if the specified port and the
attached printer are ready for printing. C_ISPRINT returns false
(.F.) if the port is not ready or the printer is not ready.
EXAMPLES
Código: Selecionar todos
if !c_isprint() && Check LPT1 port/printer
? "Printer Not Ready"
endif
...
...
if !c_isprint("COM1") && Check COM1 port/printer
? "Printer Not Ready"
endif
...
...
if !c_isprint("COM1",2,4) && Check COM1 port/printer
? "Printer Not Ready" && Wait 2 seconds each time
endif && and try 4 times.
Existe também a função C_ISLPT()
C_ISLPT()
DESCRIPTION
C_ISLPT() checks the specified LPT port to determine whether it is
ready to receive data.
NOTES
The C_ISLPT() function checks only the LPT port to determine if it
is ready. Depending on the type of printer connection, it may also
be necessary to check the printer itself to determine it's status.
SYNTAX
C_ISLPT(port)
PARAMETERS
port (N) is the LPT port number (1 = LPT1, 2 = LPT2, etc.) to check.
RETURNS
C_ISLPT() returns true (.T.) if the LPT port is ready, otherwise
false (.F.).
EXAMPLES
? c_islpt(1) --> .T. && LPT1 shows it is ready
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)
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)
Ola Marcelo,
Obrigado pela dica. Eu tinha os documentos dessa lib mais procurei no micro e acho q perdi entao nao me lembrava.
Vou tentar com a funcao C_ISLPT(port) mais se nao me engano eu tinha escolhido a C_ISPRINT(port [,delay] [,count]) por ter achado ela melhor na epoca.
Não custa tentar! Vou testar e coloco aqui o retorno.
Obrigado mais uma vez,
Obrigado pela dica. Eu tinha os documentos dessa lib mais procurei no micro e acho q perdi entao nao me lembrava.
Vou tentar com a funcao C_ISLPT(port) mais se nao me engano eu tinha escolhido a C_ISPRINT(port [,delay] [,count]) por ter achado ela melhor na epoca.
Não custa tentar! Vou testar e coloco aqui o retorno.
Obrigado mais uma vez,
Clipper 5.2e / Blinker 5.1 / Harbour 3.2 / GTwvg
- Augusto
- Usuário Nível 3

- Mensagens: 473
- Registrado em: 26 Ago 2003 17:50
- Localização: Maricá/RJ
- Contato:
Marcelo... Vc poderia me arrumar essa LIB e a NG tbm ??Clipper escreveu:C_ISPRINT()
Valeu !!
:xau Fui...
goulart@provsul.com.br
Faça da PROVSUL o seu Provedor de Serviços WEB
Visite: www.PROVSUL.com.br
goulart@provsul.com.br
Faça da PROVSUL o seu Provedor de Serviços WEB
Visite: www.PROVSUL.com.br
Prezado Augusto
Na verdade essa lib está "capada", essas funções são da CLIPON, se quiser ela pegue no link abaixo, vai com NG e tudo mais.
www.phrep.com.br/clipon.zip
Até logo.
Marcelo
Na verdade essa lib está "capada", essas funções são da CLIPON, se quiser ela pegue no link abaixo, vai com NG e tudo mais.
www.phrep.com.br/clipon.zip
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)
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)
- Augusto
- Usuário Nível 3

- Mensagens: 473
- Registrado em: 26 Ago 2003 17:50
- Localização: Maricá/RJ
- Contato:
Valeu Marcelo... Já é....
:xau Fui...
goulart@provsul.com.br
Faça da PROVSUL o seu Provedor de Serviços WEB
Visite: www.PROVSUL.com.br
goulart@provsul.com.br
Faça da PROVSUL o seu Provedor de Serviços WEB
Visite: www.PROVSUL.com.br
Ola Pessoal,
Fiz os testes com as funcoes acima mais qdo o mapeamento esta buscando uma impressora no XP mesmo que a impressora esteja desligada todas as funcoes retornam .T. ou seja, como se estivesse on-line pronta para receber os dados.
Ja alterei para imprimir diretamente na impressora mais nao adianta. Como sempre, o XP dificultando nossas vidas.
Tambem notei que quando é feito um mapeamento por exemplo:
NET USE LPT2: \\SERVIDOR\EPSON
ele fica ativo na maquina ponto onde ele foi feito, entao é como as funcoes C_ISPRINT() E AS OUTRAS testassem na verdade este mapeamento retornando .T. pois na verdade a impressora mesmo esta desligada em \\SERVIDOR\EPSON.
Se alguem tiver conhecimento de outras funcoes q funcionem qdo é o XP ficarei grato de saber.
Obrigado a todos,
Fiz os testes com as funcoes acima mais qdo o mapeamento esta buscando uma impressora no XP mesmo que a impressora esteja desligada todas as funcoes retornam .T. ou seja, como se estivesse on-line pronta para receber os dados.
Ja alterei para imprimir diretamente na impressora mais nao adianta. Como sempre, o XP dificultando nossas vidas.
Tambem notei que quando é feito um mapeamento por exemplo:
NET USE LPT2: \\SERVIDOR\EPSON
ele fica ativo na maquina ponto onde ele foi feito, entao é como as funcoes C_ISPRINT() E AS OUTRAS testassem na verdade este mapeamento retornando .T. pois na verdade a impressora mesmo esta desligada em \\SERVIDOR\EPSON.
Se alguem tiver conhecimento de outras funcoes q funcionem qdo é o XP ficarei grato de saber.
Obrigado a todos,
Clipper 5.2e / Blinker 5.1 / Harbour 3.2 / GTwvg
-
querentino
- Usuário Nível 1

- Mensagens: 25
- Registrado em: 28 Jan 2009 19:53
- Localização: Guarulhos - São Paulo
Tem como testar LPTx quando mapeado para o XP?
Olá pessoal, desculpa abrir um tópico tão antigo, kkk
preciso de uma ajuda para testar lpt1 mapeado no XP.
Onde encontro essa Lib e como usar ela.
Uso Clipper 5.3b e Blinker 7.00
Agradeço a atenção de todos.
preciso de uma ajuda para testar lpt1 mapeado no XP.
Onde encontro essa Lib e como usar ela.
Uso Clipper 5.3b e Blinker 7.00
Agradeço a atenção de todos.
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Tem como testar LPTx quando mapeado para o XP?
Que nada, na verdade você não está abrindo novo tópico e esta prática aqui sua, é uma prática acertada. Não importa ressuscitar tópicos antigos, está certo você.Olá pessoal, desculpa abrir um tópico tão antigo, kkk
Antes de buscar uma possível solução para isso, posso te perguntar para que fim é isso ?preciso de uma ajuda para testar lpt1 mapeado no XP
Olha eu achei aqui nos meus arquivos, o CLIPON .LIB e .NG (do Norton Guide). Só que nunca usei e acho que muito provável não irá funcionar. Alguém que me corrija se eu estiver errado, mas a partir do XP isso não é mais utilizável.Onde encontro essa Lib e como usar ela.
- Anexos
-
CLIPON.rar- (200.05 KiB) Baixado 272 vezes
Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Tem como testar LPTx quando mapeado para o XP?
Prezado colega.
No XP ou versões mais atualizadas não funciona, vai sempre retornar .T.
Até logo.
Marcelo
No XP ou versões mais atualizadas não funciona, vai sempre retornar .T.
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)
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)
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Tem como testar LPTx quando mapeado para o XP?
Pois é... tudo por causa do Spooler que passa a controlar a impressão, isto é, o SO passa a controlar e não a aplicação. Leia-se em: http://support.microsoft.com/kb/160129
Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
-
querentino
- Usuário Nível 1

- Mensagens: 25
- Registrado em: 28 Jan 2009 19:53
- Localização: Guarulhos - São Paulo
Tem como testar LPTx quando mapeado para o XP?
Como sempre obrigado a todos pela atenção e ajuda.
E vamos tentar outra forma então de contornar esse problema.
E vamos tentar outra forma então de contornar esse problema.
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Tem como testar LPTx quando mapeado para o XP?
Por isso, só sempre a favor de criação de arquivo de impressão para evitar o re-processamento durante a elaboração dos relatórios e também para economizar tempo quando precisar re-imprimir por falha na impressora. Com isto também consegue-se a opção de visualizar a impressão na tela. Pense nisso !E vamos tentar outra forma então de contornar esse problema.
Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Tem como testar LPTx quando mapeado para o XP?
Em se tratando do XP e versões posteriores, acho que a única forma de contralarmos o status da impressão, seria criando um aplicativo que envio um arquivo para a porta desejada e que fizesse acesso ao spooler para obter informações sobre o arquivo enviado. Apos o seu aplicativo enviar a impressao, fazer um loop durante um certo tempo para verificar se deu erro ou se terminou a impressão. Não sei se alguém do forum já criou isso. Se tiver um aplicativo de linha de comando que consiga ler o spooler pode ser a saida, alias, não sei se a Wapi do nosso colega Maligno tem função específica para isso.
Ate+
Ate+
Clipper 5.2e / Blinker 5.1 / Harbour 3.2 / GTwvg
- Pablo César
- Usuário Nível 7

- Mensagens: 5312
- Registrado em: 31 Mai 2006 10:22
- Localização: Curitiba - Paraná
Tem como testar LPTx quando mapeado para o XP?
Eu pensei nisso também, mas não consegui fazer essa verificação nem mesmo em forma local. Isto é, a impressora conectada no mesmo computador que o aplicativo de verificação está sendo usado. As vezes funciona bem as vezes não, aliás tem exemplo disso mas não funciona 100% e pelo que tenho visto na internet, em nenhuma outra linguagem de programação isto funciona. Pelo menos até onde eu pesquisei.acho que a única forma de contralarmos o status da impressão, seria criando um aplicativo que envio um arquivo para a porta desejada e que fizesse acesso ao spooler para obter informações
Um clip-abraço !
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.
Pablo César Arrascaeta
Compartilhe suas dúvidas e soluções com todos os colegas aqui do fórum.
Evite enviar as dúvidas técnicas por MPs ou eMails, assim todos iremos beneficiar-nos.

