Página 1 de 1

Destravar arquivo DBF ?

Enviado: 31 Jul 2005 16:37
por ariboni
Ola pessoal.

Tenho diversos arquivos DBF que não consigo abri-los com o DBASE, DBU e nem DatabaseDeskTop, todos eles dão a mensagem que não esta permitido abrir:
No DBASE e da a mensagem: diz que não é arquivo do DBASE III
No DBU diz que "DBFNTX/1012 Corruption Detected"
No DataBaseDesktop : "Unable Open Table / Indexes/Header"

Acho que estes arquivos estão protegidos por algum programa que altera alguma informação do cabeçalho dos arquivos.

Por favor se alguem souber de alguma coisa a respeito, me ajudem ?
Obrigado.

Enviado: 31 Jul 2005 18:51
por Stanis Luksys
Olá,

Eu até que tenho um utilitário aqui que poderia resolver o seu problema, mas por questão de ética recomendo que você entre em contato com o desenvolvedor do sitema.

Enviado: 01 Ago 2005 11:03
por Visitante
Caro Ariboni

Provalvelmente esse DBF é de uma versão superior ao III. Tente abrir no Excel, por exemplo e, logo em seguida, savá-lo como DBF (III). Verifique, antes de salvar, o tamanho dos nomes dos campos, pois em versões posteriores, os nomes dos campos não estão limitados a 8 caracteres, como na versão III dos DBF's

Um Clip Abraço

Liz@nder

Desbloqueador de DBF

Enviado: 01 Ago 2005 11:25
por ariboni
Ola Mlizander.

Acabei de tentar abrir o arquivo no excel, mas tambem não é permitido, e não consegue abri-lo.

Acho mesmo que o Stanis tem razão, o arquivo esta travado por algum programa que eu desconheço, mas gostaria de saber qual é porque o programador que desenvolveu o sistema e geraou os DBFs, não consigo encontra-lo. E insisto mais uma vez, se alguem puder disponibilizar este programa eu agradeceria muito.

Obrigado.
Ariboni.

Enviado: 01 Ago 2005 12:37
por Douglas
Caro amigo:

O padrão xBase de arquivo de dados (formato .DBF) é muito frágil, podendo se desestruturar com muita facilidade, e isso pode acontecer mais facilmente se for usado um produto estranho para criar a base de dados que será gerenciada pelo Clipper. Pode-se, entretanto, criar uma rotina para proteger um arquivo de dados padrão .DBF contra edições "estranhas" de maneira simples; apenas trocando o byte que o identifica como tal. Esse byte é o primeiro do arquivo, chamado de assinatura, e pode assumir um dos dois valores: 3 (03H) ou 131 (83H) O valor 131 indica que o arquivo possui um campo Memo, e 3 indica que não possui campo Memo; desse modo se alterarmos esse byte o arquivo não poderá mais ser reconhecido como um arquivo de dados padrão .DBF. Usando funções de baixo nível podemos ter acesso a qualquer parte de um arquivo de qualquer tipo. Baseado Nisso criei uma rotina que, utilizo inclusive em meus sistemas, que muda este byte ou retorna para o padrao correto, permitindo assim, travar ou destravar o DBF. Se quise posso te passar um copia por e-mail. Basta mandar um e-mail para mim.
Até a próxima.

Douglas Fernandes
douglas_sistemas@click21.com.br