
Temos na empresa em que trabalho uma aplicação construída em Delphi V com Crystal Reports 8.
Todos nós sabemos que Crystal e Delphi às vezes podem ser temperamentais e o pior é que quase nenhum detalhe sobre o erro. Também há uma grande falta de documentação na web sobre isso. Há muitas pessoas com problemas semelhantes, mas sem solução.
O erro de que estou falando em particular é o da imagem abaixo. Isso acontece ao tentar imprimir qualquer Crystal Reports na tela.
Isso aconteceu algumas vezes no computador do cliente e foi difícil replicar em nosso ambiente. Por ser uma versão antiga do Crystal, é muito difícil encontrar qualquer documentação útil para saber a origem exata do problema.
Responder1
O problema no registro pode ser causado por uma instalação dupla do BDE. Isso pode acontecer por vários motivos:
- Reinstalei o aplicativo ou Borland sem desinstalar antes
- A desinstalação não foi totalmente concluída
- Instalou um segundo aplicativo usando BDE
Para verificar isso, entrei no registro e encontrei o seguinte:
[HKEY_LOCAL_MACHINE \ SOFTWARE \ Borland \ Database Engine] "DLLPath" = "C: \ \ Arquivos de Programas \ \ Arquivos Comuns \ \ Borland Shared \ \ BDE" na forma de caminho1, caminho2.
Agora, para corrigir isso, você precisa fazer o seguinte:
- Faça um backup da chave BDE caso algo dê errado.
- Feche seu aplicativo.
- Abra o Regedit (Iniciar> Executar> regedit.exe)
- Vá para HKEY_LOCAL_MACHINE\SOFTWARE\Borland\Mecanismo de Banco de Dados
- Em seguida, clique duas vezes na chave de edição DLLPath e em 1 dos 2 caminhos (verifique qual é o correto de acordo com sua instalação). Você deve ter dois caminhos como na imagem abaixo. Remova um deles
Deve ter apenas um caminho como na imagem abaixo.
Fechar Reg
Agora você pode reabrir seu aplicativo e tentar abrir qualquer relatório na tela. Se você seguiu as etapas simples corretamente, não deverá receber nenhum erro e poderá ver os relatórios na tela.
Isso aconteceu principalmente na minha aplicação, mas o mesmo processo precisa ser seguido em aplicações que usam Crystal Reports e BDE Admin.
Responder2
Toda vez que tenho esse tipo de erro com o Crystal 8.5, foi relacionado a versões mistas de DLLs de implantação do Crystal ou à ausência delas. No meu caso com Crystal 6.0 que alguns de nossos clientes ainda usam.
A parte chata é encontrar todas as DLLs e excluí-las. Geralmente eles estarão em %systemroot%\system32 em x86 e em %systemroot%\syswow64 em sistemas x64.
Outras coisas a ter em conta:
- Estabeleça um ponto de partida, quer dizer, aqui sempre garantimos que funciona em uma máquina limpa.
- Várias versões do Crystal Reports na mesma máquina simplesmente não funcionam, ponto final. Não importa se você está falando sobre o ambiente de desenvolvimento ou implantação.
- Geralmente coloco todas as DLLs de implantação do Crystal 8.5 em %systemroot%\crystal e coloco-as no PATH do sistema. Isso resolveu 95% dos problemas mais comuns relacionados à implantação.
Sei que é um pouco tarde para responder, mas pode ajudar outras pessoas.