como Saber se o comando USE vai ou não abrir o Arquivo DBF?

Fórum sobre a linguagem CA-Clipper.

Moderador: Moderadores

Avatar do usuário
juniorcamilo
Usuário Nível 3
Usuário Nível 3
Mensagens: 343
Registrado em: 10 Nov 2006 09:12
Localização: Pará

como Saber se o comando USE vai ou não abrir o Arquivo DBF?

Mensagem por juniorcamilo »

Boa tarde!!

tem algum jeito de saber se o arquivo DBF esta corrompido ou somente leitura antes de usar o USE?
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

como Saber se o comando USE vai ou não abrir o Arquivo DBF?

Mensagem por alxsts »

Olá!

Veja se este tópico te ajuda: verificar integridade do dbf ???
[]´s
Alexandre Santos (AlxSts)
Avatar do usuário
juniorcamilo
Usuário Nível 3
Usuário Nível 3
Mensagens: 343
Registrado em: 10 Nov 2006 09:12
Localização: Pará

como Saber se o comando USE vai ou não abrir o Arquivo DBF?

Mensagem por juniorcamilo »

Obrigado alxsts!!
Avatar do usuário
juniorcamilo
Usuário Nível 3
Usuário Nível 3
Mensagens: 343
Registrado em: 10 Nov 2006 09:12
Localização: Pará

como Saber se o comando USE vai ou não abrir o Arquivo DBF?

Mensagem por juniorcamilo »

alxsts

só mais uma duvida :
* eu so posso usar o FClose( nHandle ) somente se FError == 0?
alxsts
Colaborador
Colaborador
Mensagens: 3092
Registrado em: 12 Ago 2008 15:50
Localização: São Paulo-SP-Brasil

como Saber se o comando USE vai ou não abrir o Arquivo DBF?

Mensagem por alxsts »

Olá!

Sim, se o valor de FError() se referir à operação de abertura do arquivo em questão. FError() vai sendo alterado à medida que algumas operações forem sendo executadas.

Quando a operação de abertura de arquivo é bem sucedida, FOpen() retorna um file handler, que é o numero do arquivo perante o sistema operacional. Este número pode estar entre 0 e 65535. Se falhar, FOpen() retornará -1.

Eu prefiro verificar se o file handle é diferente de -1 e não o FError().

Código: Selecionar todos

#include "Fileio.ch"

Function Foo()
   LOCAL nHandle
   //
   nHandle := FOPEN("Temp.txt", FO_READWRITE + FO_SHARED)   
   //
   IF nHandle == -1
      Alert( 'Mensagem' )
      RETURN .F.
   ENDIF

   //
   //   Outras operações
   //

   FClose( nHandle )

RETURN .T.
[]´s
Alexandre Santos (AlxSts)
Avatar do usuário
juniorcamilo
Usuário Nível 3
Usuário Nível 3
Mensagens: 343
Registrado em: 10 Nov 2006 09:12
Localização: Pará

como Saber se o comando USE vai ou não abrir o Arquivo DBF?

Mensagem por juniorcamilo »

obrigado mais uma vez!!
Responder