FórumGdH

Página Inicial do Guia do Hardware

Registrar FAQ Calendário Pesquisar Mensagens de Hoje Marcar Fóruns Como Lidos

Voltar   FórumGdH > Profissional > Programação, scripts, web e banco de dados
Bem-vindo ao FórumGdH
Não se esqueça de se registrar, é grátis . Nós temos 754.120 usuários, convidamos você fazer parte de nossa comunidade também! Se ainda não encontrou o que procura use nossa pesquisa. Esperamos que aprecie nosso trabalho.

Resposta
 
Opções do Tópico
Antigo 08-10-2004, 12:27   #1 (permalink)
c.ramos
Newbie
 
Registrado em: Sep 2004
Localização: Itapeva
Mensagens: 24
Reputação: 0 c.ramos está indo no caminho certo
Enviar mensagem via MSN para c.ramos
Padrão Executável Delphi

Fiz um sistema em delphi, que controla um banco de dados em access, porem para o executável rodar em outra máquina não funciona, mesmo configurando o Alias, só funciona quando instalo o delphi na máquina. Alguem poderia me dar uma dica de quais arquivos fora o executável devo colocar no computador para ele rodar normalmente sem instalar o delphi? Eu uso o delphi 7.
__________________
Cristiano Ramos
Itapeva - SP
c.ramos@ibest.com.br
c.ramos está offline   Responder com Quote
Antigo 08-10-2004, 13:08   #2 (permalink)
MaSCaRaDe
Super Participante
 
Avatar de MaSCaRaDe
 
Registrado em: Feb 2003
Localização: Rio de Janeiro/RJ
Idade: 30
Mensagens: 917
Reputação: 84 MaSCaRaDe tem uma fabulosa reputaçãoMaSCaRaDe tem uma fabulosa reputaçãoMaSCaRaDe tem uma fabulosa reputaçãoMaSCaRaDe tem uma fabulosa reputaçãoMaSCaRaDe tem uma fabulosa reputaçãoMaSCaRaDe tem uma fabulosa reputaçãoMaSCaRaDe tem uma fabulosa reputaçãoMaSCaRaDe tem uma fabulosa reputaçãoMaSCaRaDe tem uma fabulosa reputaçãoMaSCaRaDe tem uma fabulosa reputaçãoMaSCaRaDe tem uma fabulosa reputação
Enviar mensagem via ICQ para MaSCaRaDe Enviar mensagem via MSN para MaSCaRaDe
Padrão

Vc precisa copiar tb os drivers do banco de dados.... Provavelmente vc usa o Paradox ou o Interbase correto??

Abaixo segue um "breve" tutorial de como fazer este procedimento:

Código:
3- Como executar uma aplicação com Paradox sem tê-lo instalado na maquina. Enviado por Fabiano Novaes Ferreira fabianonf@ig.com.br Cheguei no resultado final abaixo na necessidade de criar programas com bancos de dados que pudessem ser executados a partir de um Zip Drive ou de um Pen Drive. O problema era que a máquina onde o sistema poderia ser usado, não necessariamente tem o BDE instalado. Com as configurações abaixo você manda os arquivos do BDE no Zip e o sistema se encarrega de registrá-los se necessário (não estraga uma instalação já existente do BDE). os arquivos do BDE abaixo listados podem estar nas seguintes pastas que a rotina funciona ... qualquer alteração dos caminhos é simples de configurar ... : - Raiz do Zip numa pasta BDE (ou equipamento de armazenagem) X:\BDE - Junto com o EXE do seu sistema X:\Sistema - Numa pasta BDE dentro da pasta do seu sistema X:\Sistema\BDE Arquivos Exenciais para o BDE: idapi32.cfg (esse arquivo pode ter qualquer outro nome, desde que seja configurado no registro.) idapi32.dll bantam.dll blw32.dll idr20009.dll charset.cvb europe.btl usa.btl idasci32.dll (Driver ASCII) iddbas32.dll (Driver DBase) idodbc32.dll (Driver ODBC) idpdx32.dll (Driver Paradox) O BDE precisa de todos esses arquivos para funcionar. Foi a configuração minima que eu consegui. eu criei a rotina abaixo para verificar a existencia do BDE na maquina procedure Verifica_BDE; const Key_Root = HKEY_LOCAL_MACHINE; Key_Data : Array[00..05, 01..03] Of String = (('Software\Borland\Database Engine', 'BDE_EXTERNAL', '0'), ('Software\Borland\Database Engine', 'DLLPATH' , '0'), ('Software\Borland\Database Engine', 'CONFIGFILE01', '1'), ('Software\Borland\BLW32' , 'BLAPIPATH' , '0'), ('Software\Borland\BLW32' , 'LOCALE_LIB1' , '5'), ('Software\Borland\BLW32' , 'LOCALE_LIB2' , '6')); BDE_Files : Array[01..10] Of String = ('idapi32.cfg', 'idapi32.dll', 'idr20009.dll', 'blw32.dll', 'usa.btl', 'europe.btl', 'idpdx32.dll', 'idasci32.dll', 'iddbas32.dll', 'idodbc32.dll'); var Status : Boolean; Index : Integer; Ind_Files : Integer; BDE_Dir : String; Registro : TRegIniFile; begin Try Registro := TRegIniFile.Create(); Registro.RootKey := Key_Root; If (Not Registro.KeyExists(Key_Data[0,1])) Or (( Registro.KeyExists(Key_Data[0,1])) And (Registro.ReadString(Key_Data[0,1], Key_Data[0,2], 'FALSE') = 'TRUE')) Then Begin For Index := 1 To 3 Do Begin Case Index Of 1 : BDE_Dir := ExtractFileDrive(ParamStr(0)) + '\BDE\'; 2 : BDE_Dir := ExtractFileDir(ParamStr(0)) + '\BDE\'; 3 : BDE_Dir := ExtractFilePath(ParamStr(0)); End; Status := DirectoryExists(BDE_Dir); If Status Then For Ind_Files := Low(BDE_Files) To High(BDE_Files) Do Status := Status And FileExists(BDE_Dir + BDE_Files[Ind_Files]); If Status Then Break; End; For Index := Succ(Low(Key_Data)) To High(Key_Data) Do Begin If Key_Data[Index,3] = '0' Then Registro.WriteString(Key_Data[Index,1], Key_Data[Index,2], BDE_Dir) Else Registro.WriteString(Key_Data[Index,1], Key_Data[Index,2], BDE_Dir + BDE_Files[StrToInt(Key_Data[Index,3])]); End; Registro.WriteString(Key_Data[0,1], Key_Data[0,2], 'TRUE'); End; Finally Registro.Free; End; end; PS. Acrescentar no Uses do programa a biblioteca Registry Quanto ao Alias, eu criei (a varios anos) uma rotina para criar o alias pra mim sempre que eu precisar ... eu uso a função : procedure Cria_Alias(Parametros : Array Of Variant); var List_Aux : TStringList; begin If (Parametros[0] <> '') And (Parametros[1] <> '') Then Begin {Configura o parâmetro Local Share} SetConfigParameter('\SYSTEM\INIT\;LOCAL SHARE' , 'FALSE'); {Configura o parâmetro Net Dir} SetConfigParameter('\DRIVERS\PARADOX\INIT\;NET DIR', Parametros[1]); {Cria ou altera o Path do Alias} List_Aux := TStringList.Create; List_Aux.Clear; List_Aux.Add('PATH=' + Parametros[1]); If Not Session.IsAlias(Parametros[0]) Then Session.AddAlias(Parametros[0], 'PARADOX', List_Aux) Else Session.ModifyAlias(Parametros[0], List_Aux); Session.SaveConfigFile; List_Aux.Free; End; end; Para usá-la basta chamar no on create de seu programa : Verifica_BDE; Cria_Alias(['Nome do Alias', 'Pasta de Dados']);
[]s DB! :twisted:
__________________
"Read the directions and directly you will be directed in the right direction."

http://www.dmbtecnologia.com.br
MaSCaRaDe está offline   Responder com Quote
Antigo 08-10-2004, 13:43   #3 (permalink)
c.ramos
Newbie
 
Registrado em: Sep 2004
Localização: Itapeva
Mensagens: 24
Reputação: 0 c.ramos está indo no caminho certo
Enviar mensagem via MSN para c.ramos
Padrão

Citação:
Arquivos Exenciais para o BDE:

idapi32.cfg (esse arquivo pode ter qualquer outro nome, desde que seja configurado no registro.)
idapi32.dll
bantam.dll
blw32.dll
idr20009.dll
charset.cvb
europe.btl
usa.btl

idasci32.dll (Driver ASCII)
iddbas32.dll (Driver DBase)
idodbc32.dll (Driver ODBC)
idpdx32.dll (Driver Paradox)
Bom, copiei todos os arquivos, porem continuou não funcionando, se alguem tiver alguma dica me mandem
__________________
Cristiano Ramos
Itapeva - SP
c.ramos@ibest.com.br
c.ramos está offline   Responder com Quote
Antigo 10-10-2004, 16:56   #4 (permalink)
Lex_Luthor
Newbie
 
Registrado em: May 2004
Mensagens: 48
Reputação: 0 Lex_Luthor está indo no caminho certo
Padrão

Bom, creio que você já deve ter feito isso, mas mesmo assim: Você colocou na guia "Project", a opção "Build all Projects"?? Pois quando você faz isso, na pasta onde o programa foi salvo, é adicionado também o executável, que rodará também nas máquinas que não possuem o Delphi.

Espero ter ajudado,

Lex.
Lex_Luthor está offline   Responder com Quote
Antigo 10-10-2004, 23:16   #5 (permalink)
romulo
Zumbi
 
Registrado em: Dec 2001
Localização: Fortaleza / CE
Mensagens: 7.506
Reputação: 30 romulo está indo no caminho certo
Enviar mensagem via ICQ para romulo
Padrão

Eu não sei se é esse o caso, pois você usa o Delphi 7, mas com o Delphi 5 acontece do InstallShield não levar todos os arquivos necessários para que o software acesse o Access pelo BDE. Aí eu sempre tinha que instalar o BDE inteiro pela instalação do Delphi no micro cliente (ou seja, começava a instalar o Delphi inteiro, mas na seleção de opções marcava somente a parte de acesso a dados). Em alguns casos o próprio Access precisava estar instalado na máquina.

Na verdade acessar o Access pelo BDE não é exatamente uma maravilha, eu recomendaria que você trocasse os componentes do BDE pelos componentes do ADO, lembrando de instalar o Microsoft Data Access (MDAC) no micro cliente. É o que eu estou fazendo hoje, sem mais dores de cabeça...
__________________
Minha coleção de jogos (todos originais)
romulo está offline   Responder com Quote
Antigo 06-07-2006, 8:42   #6 (permalink)
MESTRE-ANDREI-FELIPE
Newbie
 
Registrado em: Jul 2006
Localização: Matinhos / Paraná
Mensagens: 4
Reputação: 0 MESTRE-ANDREI-FELIPE está indo no caminho certo
Enviar mensagem via ICQ para MESTRE-ANDREI-FELIPE
Padrão

Serei breve:
funciona da seguinte forma:
vc pode fazer uma instalação de BDE compacta, e para que ela funcione a unica coisa que vc deverá fazer é levar os arquivos para o PC do cliente, e alterar umas duas chaves no registro. (sem alterar não funciona)

Dados:
Para uma instalação simples são necessários ppoucos arquivos do bde (zipado dá menos que um disquet...) mas se seu programa usa SQL, terá que por mais alguns arquivinhos...)

Este tipo de coisa é boa pois não precisará instalar todo o delhi na máquina do cliente e nem o BDE completo que também é grandinho...

Problema:
O maio problema de todos é que se na máquina do cliente já tiver um programa que use BDE, então por certo a máquina do cliente já tem o BDE instalado... e portanto se vc alterar o registro, o programa que já tem na máquina do cliente poderá ter problemas de execução pois agora o registro estará apontando para a (nova instalação de BDE) que no seu caso será o BDE enxuto...
Por isso que eu recomendo que use a dica do amigo acima que fez uma rotina para verificar se o BDE já existe na máquina...

Então: pra rodar na outra máquina com BDE enxuto, só precisará de duas coisas: Arquivos e alteração no registro.

Em todo caso também posso indicar o seguinte: vc poderá fazer um instalador de BDE enxuto em separado numa pasta junto com seu programa... dai vc tenta rodar o programa normalmente no cliente... e se ele não rodar dai vc verifica se realmente não tem o bde no PC do seu cliente e instala o seu...
__________________
=========================
Peço que não me enviem dúvidas por e-mail. Pois eu trabalho tanto que não tenho tempo nem pra comer direito...
Obrigado a todos pela ajuda.
MESTRE-ANDREI-FELIPE está offline   Responder com Quote
Resposta


Opções do Tópico

Regras de Mensagens
Você não pode criar tópicos
Você não pode postar respostas
Você não pode anexar arquivos
Você não pode editar suas mensagens

Código vB está Ligado
Smiles estão Ligado
Código [IMG] está Ligado
Código HTML está Desligado
Ir para...


Horários baseados na GMT -3. Agora são 14:33.