Array
(
)

Como resolver este erro no Aplicativo?

Helio Nascimento
   - 06 fev 2006

Colegas

Tenho uma aplicação c/s - d7 -DBExpress - Interbase 6,5 que rodava maravilhosamente. A Maquina do cliente foi formatada. Reinstalei o InterBase Client - Midas.dll, dbconnections etc.

Aciono a aplicação, inicializa . Abre a tela de Login , e ao clicar no botão ok, para verificar a autenticidade do Usuario + Senha , dá -se a seguinte mensagem : ´ A ErrorOccurred While Attempting to Initialize The Borland Database Engine ( error #2108) ´ , é fechado esta caixa de mensagem e a aplicação roda normalmente. Como resolver isto?

Gratos/Hélio


Weber
   - 06 fev 2006

Está dando erro no DBE, tente reinstalar.


Helio Nascimento
   - 06 fev 2006

#Código

Está dando erro no DBE, tente reinstalar.


Weber.Obrigado por ter respondido. Não uso DBE - Uso o Interbase 6,5 - Voce diz que terei que desisntala-lo e reinstala-lo novamente?


Aroldo Zanela
   - 06 fev 2006

Colega,

Eu também acredito que tenha algum componente tentando usar o BDE, pois esta mensagem é típica. Pode ser algum componente de terceiro, como: RxLib, JediVCL, etc.


Helio Nascimento
   - 06 fev 2006

#Código

Eu também acredito que tenha algum componente tentando usar o BDE, pois esta mensagem é típica. Pode ser algum componente de terceiro, como: RxLib, JediVCL, etc.


Aroldo Zanella

Acho que vc matou... tenho sim no aplicativo componentes RXLib, e por utiliza-los tenho que tambem instalar a DBE COMPLETA no meu CLIENTE?


Massuda
   - 06 fev 2006


Citação:
...tenho que tambem instalar a DBE COMPLETA no meu CLIENTE?
Você só iria precisar disso se estiver usando algum componente da aba ´RX DBAware´. Mas como você usa dbExpress, talvez fosse melhor rever o que você está usando que depende do BDE para evitar a necessidade de instalar o BDE junto.


Martins
   - 06 fev 2006


Citação:

Citação:
...tenho que tambem instalar a DBE COMPLETA no meu CLIENTE?
Você só iria precisar disso se estiver usando algum componente da aba ´RX DBAware´. Mas como você usa dbExpress, talvez fosse melhor rever o que você está usando que depende do BDE para evitar a necessidade de instalar o BDE junto.


Dessa eu não sabia, quer dizer que quando se usa os componentes da aba ´RX DBAware´, esses componentes utilizam o BDE? Pensei q fossem independente, tipo se eu uso Interbase ou Firebird pensei q eles utilizassem.

Bom saber disso. Vou até rever algumas coisas já projetadas.


Helio Nascimento
   - 06 fev 2006

#Código

Você só iria precisar disso se estiver usando algum componente da aba "RX DBAware"


Matsuda

Uso em todos os forms que precisam pegar ou trabalhar com datas eu utilizo o DBDateEdit (RXDBCtrl) ok será que tenho que substitui-lo por outro da VCL?


Massuda
   - 06 fev 2006


Citação:
Você só iria precisar disso se estiver usando algum componente da aba ´RX DBAware´.
Deculpem-me, não devia ter generalizado; precisaria fazer uma análise caso-a-caso desses componentes. Por exemplo, TRxMemoryData e TRxMemoryTable são componentes parecidos (ambos são tabelas em memória), mas o TRxMemoryTable depende do BDE enquanto o TRxMemoryData não.

@Helio
Na verdade, você teria que tentar verificar no seu programa se tem algo que dependa do BDE (não necessariamente o RxLib).


Helio Nascimento
   - 08 fev 2006

Pessoal - pesquisando... encontrei no site do colega Ramos.. e que passo à nossa comunidade:

#Código

Instalando o BDE com o Inno Setup
Instalando o BDE com o Inno Setup
Delphi 4.x Delphi 5.x Delphi 6.x
Delphi 7.x
Categoria:
Outros

Nível de Habilidade:

Classificação:

Inserção:
15/03/2003
Palavras Principais:
Instalação Inno Setup BDE
Número de Votos :
3
Usuário: Ramos de Souza Janones
Referência:

Questão/Problema:

Como criar Instalações com o Inno Setup com o BDE?

Resposta:

Em determinadas situações, nosso cliente resolve que precisa formatar o disco rígido e, prudentemente, faz um backup dos dados e da atual instalação do nosso software.

Após, formata o HD e restaura os backups, e o programa simplesmente deixa de funcionar, surgindo a famosa mensagem:

"An error ocurred while attempting to initialize the Borland Database Engine (error $2109)"

Tal erro acontece com programas que usam Paradox e dBase e que têm como mecanismo de acesso aos dados a Borland Database Engine (BDE), que foi durante anos o principal meio de se trabalhar com tabelas em aplicativos Delphi.

O sumiço se deve, geralmente, ao técnico que o cliente contratou para formatar a máquina (ou o próprio cliente, algum funcionário, amigo ou filho "entendedor do assunto"), e que em geral nunca ouviu falar da BDE, e não faz cópia de nada, muito menos se preocupa com a necessidade de reinstalar esta peça vital no funcionamento dos nossos programas.

É um problema que ocorre com certa frequência, e foi um dos motivos pelos quais abandonei o uso do BDE.

Desenvolvi, então, módulos de migração para o DBISAM - engine que atualmente faz o acesso aos dados nos meus softwares - que, adivinhe só, não funcionaram porque não há meios de abrir os antigos arquivos Paradox, já que a BDE está ausente ou mal-instalada.

Portanto, para poder rodar os módulos de importação de dados, tem que reinstalar o BDE no cliente. Mas, como instalar o BDE sozinho, sem nenhum outro software? E, importante, fazer de forma que esteja de acordo com as normas de distribuição da Borland, que reza que seja feito por um instalador homologado pela empresa? Melhor ainda, com mensagens em português (onde for possível) e sem que nosso usuário leigo se atrapalhe?

Pela frequência com que semelhante pergunta se repete nesse e em outros grupos de discussão sobre Delphi, resolvi escrever algo a respeito, contando como solucionei o problema, usando o Inno Setup para gerar o programa de instalação.

Passo 1:

Instale o Inno Setup. Faça o download gratuito em http://www.jrsoftware.org/

Passo 2:

Baixe as mensagens em português daqui (note os espaços no nome):
http://kylix.virtualave.net/forum/Jr PT-Br 3.06.isl

Passo 3: (passos 3 e 4 traduzidos da página do Inno Setup)

Baixe o programa MiniReg.exe para o diretório origem de sua instalação, a partir do endereço http://www.jrsoftware.org/files/MiniReg.exe

MiniReg é um utilitário que Jordan Russel (autor do Inno Setup) escreveu, e que contém um subconjunto das funcionalidades do programa REGSVR32.EXE, da Microsoft. (REGSVR32.EXE não é usado porque não vêm preinstalado em algumas versões do Windows 95).

Passo 4: Extraia o arquivo BDEINST.DLL do arquivo BDEINST.CAB, localizado (geralmente) em Arquivos de Programas\Arquivos Comuns\Borland Shared\BDE. Para isso, use o WINZIP ou digite "extract BDEINST.CAB" na linha de comando. Se o BDEINST.CAB não existir, e nem em seu CD do Delphi, baixe-o daqui http://www.jrsoftware.org/files3/bdeinst.cab

Passo 5: Mova o arquivo BDEINST.DLL para o diretório origem de sua instalação.

Passo 6: Coloque as linhas abaixo no seu script do Inno Setup e compile:



[Files]
Source: MiniReg.exe; DestDir: {tmp}
Source: BdeInst.dll; DestDir: {tmp}

[Run]
Filename: {tmp}\MiniReg.exe; Parameters: """{tmp}\BdeInst.dll"""

[Setup]
OutputDir=C:\Delphi\BDE
OutputBaseFilename=bde_setup
MessagesFile=C:\Delphi\Inno\Jr PT-Br 3.06.isl
Compression=bzip
AppName=Borland Database Engine
AppVerName=Borland Database Engine 5.1.1
DisableProgramGroupPage=true
DefaultDirName={tmp}
DisableDirPage=true
DisableStartupPrompt=true
Uninstallable=false
CreateUninstallRegKey=false
UpdateUninstallLogAppName=false
DisableFinishedPage=true



Feito isso, você terá um instalador certificado, já que será o próprio BDEINST.DLL, da Borland, que fará a instalação dos arquivos e a criação das entradas apropriadas no registro do Windows e não o seu instalador.