Configurar Firebird em Rede XP com Win2000
Uso um servidor Win2000. Estou tentando configurar uma estação com WinXp em Firebird 1.5 usando um arquivo .ini
coloquei várias configurações. ex: 192.168.1.11:c:\saude\saude.gdb - várias e nenhuma reconheceu o servidor embora a máquina esteja pingando normalmente.
Alguém pode me ajudar?
coloquei várias configurações. ex: 192.168.1.11:c:\saude\saude.gdb - várias e nenhuma reconheceu o servidor embora a máquina esteja pingando normalmente.
Alguém pode me ajudar?
Amilton/pr
Curtidas 0
Respostas
Fsflorencio
16/08/2004
Você já tentou conectar o seu banco através de outro aplicativo como o ibconsole ou quickdesk? Se não, faça um teste, pois aparentemente o caminho do banco está correto.
GOSTEI 0
Vinicius2k
16/08/2004
Colega,
Vc instalou o Firebird Client na estação XP?
Vc instalou o Firebird Client na estação XP?
GOSTEI 0
Afarias
16/08/2004
Vc pode dizer qual o erro?? Ia ajudar muito!
T+
T+
GOSTEI 0
Amilton/pr
16/08/2004
Seguinte colegas . . .
Meu instalador do firebird é: Firebird 1.5.0.3744.RC4-Win32.exe.
Quando faço a instalação tem as opções:
1- Full intallation of super server and developments tools.
2- Full intallation of classic server and developments tools.
3- installation of client tolls for developers and database administrators
4- Minimun client install - no server, no tolls.
Então eu instalo a opcao 1 para o Servidor e a opção 3 para o cliente, embora no cliente eu tbém já instalei a opção 4.
Faço o acesso a base de dados por arquivo .ini e funciona bem.
Quando tento acessar nas estações na máquina servidora aparece essa mensagem:
Missing Configuration File: c:\Arquivo de programa\Firebird\Firebird_1_5\alias.conf
e botão OK.
Fecho a mensagem então a estação entra no sistema mas quando foi fazer a manipulação de dados dá erro de acesso nas tabelas.
As estações todas exengarm o servidor normalmente.
Uso pra acesso as tabelas o componente IBDataSet e relatórios pesquisas o componente IBQuery.
Agradeço se alguém puder ajudar!!!
Meu instalador do firebird é: Firebird 1.5.0.3744.RC4-Win32.exe.
Quando faço a instalação tem as opções:
1- Full intallation of super server and developments tools.
2- Full intallation of classic server and developments tools.
3- installation of client tolls for developers and database administrators
4- Minimun client install - no server, no tolls.
Então eu instalo a opcao 1 para o Servidor e a opção 3 para o cliente, embora no cliente eu tbém já instalei a opção 4.
Faço o acesso a base de dados por arquivo .ini e funciona bem.
Quando tento acessar nas estações na máquina servidora aparece essa mensagem:
Missing Configuration File: c:\Arquivo de programa\Firebird\Firebird_1_5\alias.conf
e botão OK.
Fecho a mensagem então a estação entra no sistema mas quando foi fazer a manipulação de dados dá erro de acesso nas tabelas.
As estações todas exengarm o servidor normalmente.
Uso pra acesso as tabelas o componente IBDataSet e relatórios pesquisas o componente IBQuery.
Agradeço se alguém puder ajudar!!!
GOSTEI 0
Afarias
16/08/2004
|Missing Configuration File: c:\Arquivo de programa\Firebird\Firebird_1_5
|\alias.conf
Pela mensagem, está faltando o arquivo alias.conf no servidor (basta criar um arquivo texto em branco com este nome) -- ou, na verdade o erro é na estação, pq seu programa está tentando fazer uma conexão LOCAL e não no servidor! Dai é bom vc depurar direitinho o programa.
É muito comum por exemplo compilar o programa esquecendo a propriedade Connected do Database como TRUE o q causa esse tipo de coisa -- se vc usa IBX pode configurar a propriedade AllowStremedConnected para FALSE para evitar isso.
Se vc usa ClientDataSets tb NUNCA esqueça um deles aberto em Design (Active = True) ou tb passará por isso.
Ahhh!! e antes de mais nada!! NÃO use o FB 1.5 RC4!! Use a versão FINAL! Ok?! Tem muitos bugs corrigidos, inclusive do script de instalação.
(vai q é esse o problema!)
T+
|\alias.conf
Pela mensagem, está faltando o arquivo alias.conf no servidor (basta criar um arquivo texto em branco com este nome) -- ou, na verdade o erro é na estação, pq seu programa está tentando fazer uma conexão LOCAL e não no servidor! Dai é bom vc depurar direitinho o programa.
É muito comum por exemplo compilar o programa esquecendo a propriedade Connected do Database como TRUE o q causa esse tipo de coisa -- se vc usa IBX pode configurar a propriedade AllowStremedConnected para FALSE para evitar isso.
Se vc usa ClientDataSets tb NUNCA esqueça um deles aberto em Design (Active = True) ou tb passará por isso.
Ahhh!! e antes de mais nada!! NÃO use o FB 1.5 RC4!! Use a versão FINAL! Ok?! Tem muitos bugs corrigidos, inclusive do script de instalação.
(vai q é esse o problema!)
T+
GOSTEI 0
Amilton/pr
16/08/2004
seguinte . . .
O arquivo aliases.conf está na pasta c:\arquivo de programa\Firebird\Firebird_1_5 do servidor mas não tem na estação(será isso?);
Para a conexão do programa uso um arquivo .ini assim:
192.168.1.3\Saude\Saude.gdb, depois recebo esse valor na propriedade databasename e coloco a propriedade connected pra True.
No caminho não está dando erro, até porque depois das mensagens de erro a estação entra no ar, embora não consiga acessar nenhuma tabela.
A propriedade AllowStremedConnected do componente IbDatabase que é ligado ao IbTransaction está True;
No meu DataModule tem um componente ClientDataSet ligado ao IbDataBase e ao IbTransaction, mas não tem a propriedade Design, tem active e está false. Vou remover esse componente não sei sua utilidade.
Cheguei a instalar o Firebird 1.0 e continuou com o erro que falei.
As instalações que fiz de Servidor e Cliente estão certas?
Onde posso baixar a versão mais nova do Firebird?
O arquivo aliases.conf está na pasta c:\arquivo de programa\Firebird\Firebird_1_5 do servidor mas não tem na estação(será isso?);
Para a conexão do programa uso um arquivo .ini assim:
192.168.1.3\Saude\Saude.gdb, depois recebo esse valor na propriedade databasename e coloco a propriedade connected pra True.
No caminho não está dando erro, até porque depois das mensagens de erro a estação entra no ar, embora não consiga acessar nenhuma tabela.
A propriedade AllowStremedConnected do componente IbDatabase que é ligado ao IbTransaction está True;
No meu DataModule tem um componente ClientDataSet ligado ao IbDataBase e ao IbTransaction, mas não tem a propriedade Design, tem active e está false. Vou remover esse componente não sei sua utilidade.
Cheguei a instalar o Firebird 1.0 e continuou com o erro que falei.
As instalações que fiz de Servidor e Cliente estão certas?
Onde posso baixar a versão mais nova do Firebird?
GOSTEI 0
Afarias
16/08/2004
|O arquivo aliases.conf está na pasta c:\arquivo de
|programa\Firebird\Firebird_1_5 do servidor mas não tem na estação
|(será isso?);
NÃO -- este arquivo é requerido apenas pelo Firebird Server
|Para a conexão do programa uso um arquivo .ini assim:
|192.168.1.3\Saude\Saude.gdb,
Errado! a string de conexão correta para o protocolo TCP e servidor Windows é:
192.168.1.3:c:\Saude\Saude.gdb
(supondo q a pasta saude esteja em C)
|depois recebo esse valor na propriedade databasename e coloco a
|propriedade connected pra True.
Vc leu minha última mensagem?? Nada disso adienta se vc deixou a propriedade Connected=True e AllowStreamedConnected=True ou esteja usando ClientDataSets e tenha deixado algum com Active=True
|No caminho não está dando erro, até porque depois das mensagens de
|erro a estação entra no ar, embora não consiga acessar nenhuma
|tabela.
Então é pq não conectou! (creio)
|A propriedade AllowStremedConnected do componente IbDatabase que
|é ligado ao IbTransaction está True;
Pois é, como falei na outra mensagem ela deve ser FALSE!
|No meu DataModule tem um componente ClientDataSet ligado ao
|IbDataBase e ao IbTransaction,
:?: :?: ClientDataSets não são ligados a IBDatabases ou IBTransactions
|mas não tem a propriedade Design,
Não mesmo!
|tem active e está false.
Ok, está correto
|Vou remover esse componente não sei sua utilidade.
:?: :?: :?:
|Cheguei a instalar o Firebird 1.0 e continuou com o erro que falei.
Era de se esperar!
|As instalações que fiz de Servidor e Cliente estão certas?
SIM, mas com tb já falei, nào use RC, use a versão final do FB 1.5
|Onde posso baixar a versão mais nova do Firebird?
http://www.ibphoenix.com/main.nfs?a=ibphoenix&page=ibp_download_15
T+
|programa\Firebird\Firebird_1_5 do servidor mas não tem na estação
|(será isso?);
NÃO -- este arquivo é requerido apenas pelo Firebird Server
|Para a conexão do programa uso um arquivo .ini assim:
|192.168.1.3\Saude\Saude.gdb,
Errado! a string de conexão correta para o protocolo TCP e servidor Windows é:
192.168.1.3:c:\Saude\Saude.gdb
(supondo q a pasta saude esteja em C)
|depois recebo esse valor na propriedade databasename e coloco a
|propriedade connected pra True.
Vc leu minha última mensagem?? Nada disso adienta se vc deixou a propriedade Connected=True e AllowStreamedConnected=True ou esteja usando ClientDataSets e tenha deixado algum com Active=True
|No caminho não está dando erro, até porque depois das mensagens de
|erro a estação entra no ar, embora não consiga acessar nenhuma
|tabela.
Então é pq não conectou! (creio)
|A propriedade AllowStremedConnected do componente IbDatabase que
|é ligado ao IbTransaction está True;
Pois é, como falei na outra mensagem ela deve ser FALSE!
|No meu DataModule tem um componente ClientDataSet ligado ao
|IbDataBase e ao IbTransaction,
:?: :?: ClientDataSets não são ligados a IBDatabases ou IBTransactions
|mas não tem a propriedade Design,
Não mesmo!
|tem active e está false.
Ok, está correto
|Vou remover esse componente não sei sua utilidade.
:?: :?: :?:
|Cheguei a instalar o Firebird 1.0 e continuou com o erro que falei.
Era de se esperar!
|As instalações que fiz de Servidor e Cliente estão certas?
SIM, mas com tb já falei, nào use RC, use a versão final do FB 1.5
|Onde posso baixar a versão mais nova do Firebird?
http://www.ibphoenix.com/main.nfs?a=ibphoenix&page=ibp_download_15
T+
GOSTEI 0
Amilton/pr
16/08/2004
A conexão funcionou assim: 192.168.1.3\c:\saude\saude.gdb
com 192.168.1.3:c:\saudezsaude.gdb - dá erro na conexão com o banco.
Coloquei a propriedade AllowStremedConnected em False do componente IbDataset.
Eliminei o componente IbClientDataSet e compilou o projeto novamente.
Ah! esse componente tem as propriedade DbConnection e DbTransaction para ligar ao IbDataSet e ao IbTransaction.
Baixei a versão Firebird_1.5.1.4481-win32.exe e vou instalar)é a ultima versão)
O que é Firebird_1.5.1.4481_embed_win32?
Quando se trabalha com o Firebird pode ter a instalação de Interbase na máquina?
Aguardo retorno . . .
com 192.168.1.3:c:\saudezsaude.gdb - dá erro na conexão com o banco.
Coloquei a propriedade AllowStremedConnected em False do componente IbDataset.
Eliminei o componente IbClientDataSet e compilou o projeto novamente.
Ah! esse componente tem as propriedade DbConnection e DbTransaction para ligar ao IbDataSet e ao IbTransaction.
Baixei a versão Firebird_1.5.1.4481-win32.exe e vou instalar)é a ultima versão)
O que é Firebird_1.5.1.4481_embed_win32?
Quando se trabalha com o Firebird pode ter a instalação de Interbase na máquina?
Aguardo retorno . . .
GOSTEI 0
Afarias
16/08/2004
|A conexão funcionou assim: 192.168.1.3\c:\saude\saude.gdb
|com 192.168.1.3:c:\saudezsaude.gdb - dá erro na conexão com o
|banco.
É estranho vc ter erro com a string q usa TCP. A q vc falou estar dando certo está usando Named Pipes.
|Coloquei a propriedade AllowStremedConnected em False do
|componente IbDataset.
IBDatabase, Bom!
|Ah! esse componente tem as propriedade DbConnection e DbTransaction
|para ligar ao IbDataSet e ao IbTransaction.
SIM, o TIBClientDataSet tem sim... o TClientDataSet q não.
|O que é Firebird_1.5.1.4481_embed_win32?
Uma versão do Firebird para acesso local apenas
|Quando se trabalha com o Firebird pode ter a instalação de Interbase na
|máquina?
(servidores né?) com FB 1.5 sim
T+
|com 192.168.1.3:c:\saudezsaude.gdb - dá erro na conexão com o
|banco.
É estranho vc ter erro com a string q usa TCP. A q vc falou estar dando certo está usando Named Pipes.
|Coloquei a propriedade AllowStremedConnected em False do
|componente IbDataset.
IBDatabase, Bom!
|Ah! esse componente tem as propriedade DbConnection e DbTransaction
|para ligar ao IbDataSet e ao IbTransaction.
SIM, o TIBClientDataSet tem sim... o TClientDataSet q não.
|O que é Firebird_1.5.1.4481_embed_win32?
Uma versão do Firebird para acesso local apenas
|Quando se trabalha com o Firebird pode ter a instalação de Interbase na
|máquina?
(servidores né?) com FB 1.5 sim
T+
GOSTEI 0
Amilton/pr
16/08/2004
Instalei a versão Firebird-1.5.1.4481-Win32.
Mesmo removendo todas as instalações anteriores sempre dava a mensagem que tinha algum serviço de banco ativo, mesmo assim terminei a instalação.
Uso o IbExpert para a manutenção das tabelas e agora tá dando o erro de gds32.dll. Atualizei o Ibexpert para a versão 2004 e continua com o erro.
Alguém pode me ajudar?
Mesmo removendo todas as instalações anteriores sempre dava a mensagem que tinha algum serviço de banco ativo, mesmo assim terminei a instalação.
Uso o IbExpert para a manutenção das tabelas e agora tá dando o erro de gds32.dll. Atualizei o Ibexpert para a versão 2004 e continua com o erro.
Alguém pode me ajudar?
GOSTEI 0
Amilton/pr
16/08/2004
Já resolvi. É só apagar a dll que a instalação cria uma nova.
GOSTEI 0
Vinicius2k
16/08/2004
Colega,
Alguns componentes de acesso, como o IBX, por serem ´feitos para o IB´ estão ´presos´ na existência da gds32.dll, que não existe mais no FB 1.5...
O procedimento mais indicado para remover instalações anteriores e instalar novas versões e manter a compatibilidade de com os estes componentes é:
- Fazer a remoção convencional através do uninstall da versão anterior.
- Fazer a remoção manual da gds32.dll (System do Windows)
- Instalar a nova versão e marcar (ao final do Setup) a opção que efetua uma cópia da fbclient.dll com o nome de gds32.dll
O resultado final é que vc terá a dll padrão do firebird (fbclient.dll) e um clone dela com o nome de gds32.dll (IB)...
Vc pode fazer esta cópia da fbclient.dll como gds32.dll manualmente também...
No caso do IBExpert, note que ele também lhe solicita a informação do nome da DLL cliente q vc deseja utilizar, basta informar fbclient.dll ou gds32.dll (a clone da fbclient.dll)... como padrão está a gds32.dll, mas a sua, provavelmente, ainda é a do IB.
Não cheguei a trabalhar pra valer com o FB 1.5 nas versões RC, mas seria aconselhável que q vc fizesse um back-up do banco com a versão anterior instalada e efetuasse um restore na versão nova... este é o procedimento para migração do FB 1.0 ou do IB 6 para o FB 1.5, já que estruturas internas foram alteradas no 1.5...
t+
Alguns componentes de acesso, como o IBX, por serem ´feitos para o IB´ estão ´presos´ na existência da gds32.dll, que não existe mais no FB 1.5...
O procedimento mais indicado para remover instalações anteriores e instalar novas versões e manter a compatibilidade de com os estes componentes é:
- Fazer a remoção convencional através do uninstall da versão anterior.
- Fazer a remoção manual da gds32.dll (System do Windows)
- Instalar a nova versão e marcar (ao final do Setup) a opção que efetua uma cópia da fbclient.dll com o nome de gds32.dll
O resultado final é que vc terá a dll padrão do firebird (fbclient.dll) e um clone dela com o nome de gds32.dll (IB)...
Vc pode fazer esta cópia da fbclient.dll como gds32.dll manualmente também...
No caso do IBExpert, note que ele também lhe solicita a informação do nome da DLL cliente q vc deseja utilizar, basta informar fbclient.dll ou gds32.dll (a clone da fbclient.dll)... como padrão está a gds32.dll, mas a sua, provavelmente, ainda é a do IB.
Não cheguei a trabalhar pra valer com o FB 1.5 nas versões RC, mas seria aconselhável que q vc fizesse um back-up do banco com a versão anterior instalada e efetuasse um restore na versão nova... este é o procedimento para migração do FB 1.0 ou do IB 6 para o FB 1.5, já que estruturas internas foram alteradas no 1.5...
t+
GOSTEI 0
Amilton/pr
16/08/2004
seguinte:
Instalei o firebird 1.5.1.4481_win32;
No Servidor(Win2000) a versão superServer
e na estação(WinXp) a versão Client;
Delphi6; rede em dominio;
Uso arquivos .ini pra acessar o banco:
No servidor: \\192.168.1.11\C:\Saude\Saude.gdb
Na estação: 192.168.1.11:C:\saude\saude.gdb
Fui testando com mensagens pra descobrir o erro . . . Primeiramente chamo a tela de senham leio o arquivo ini recebo num edit no evento on create do Data module fiz assim:
try
Ibdata1.databaseName:=F_Senha.edit5.text;
Ibdata1.Connected:=true;
showmessage(´banco conectado´);
except
showmessage(´banco nao conectado´);
end;
As mensagens funcionaram bem até na estação.
Depois disso a estação trava e dá aquela mensagem de erro do windows, eu não sei pra onde o programa tá indo já que retorno ao formulario de senha pra confirmar a entrada mas nesse form roda o Oncreate, depois o DataModule e não chega a ativar o form de senha.
A propriedade AllowStremedConnect do IbDataBase está false;
uso no programa componentes IbDataSet pra inclusão de dados;
Preciso muito resolver essa situação, agradeço a quem puder ajudar!
Instalei o firebird 1.5.1.4481_win32;
No Servidor(Win2000) a versão superServer
e na estação(WinXp) a versão Client;
Delphi6; rede em dominio;
Uso arquivos .ini pra acessar o banco:
No servidor: \\192.168.1.11\C:\Saude\Saude.gdb
Na estação: 192.168.1.11:C:\saude\saude.gdb
Fui testando com mensagens pra descobrir o erro . . . Primeiramente chamo a tela de senham leio o arquivo ini recebo num edit no evento on create do Data module fiz assim:
try
Ibdata1.databaseName:=F_Senha.edit5.text;
Ibdata1.Connected:=true;
showmessage(´banco conectado´);
except
showmessage(´banco nao conectado´);
end;
As mensagens funcionaram bem até na estação.
Depois disso a estação trava e dá aquela mensagem de erro do windows, eu não sei pra onde o programa tá indo já que retorno ao formulario de senha pra confirmar a entrada mas nesse form roda o Oncreate, depois o DataModule e não chega a ativar o form de senha.
A propriedade AllowStremedConnect do IbDataBase está false;
uso no programa componentes IbDataSet pra inclusão de dados;
Preciso muito resolver essa situação, agradeço a quem puder ajudar!
GOSTEI 0
Vinicius2k
16/08/2004
No servidor: \\192.168.1.11\C:\Saude\Saude.gdb
Agora entendi como funcionou com NamedPipe... :D
mas essa linha, teoricamente, só vai funcionar no servidor... a não ser q vc tenha o protocolo NetBeUI na rede..
vc tbm pode(ou deve) usar :[b:4eef6d8470] localhost:C:\Saude\Saude.gdb[/b:4eef6d8470] no servidor...
Depois disso a estação trava e dá aquela mensagem de erro do windows...
Que mensagem de erro? Talvez esteja nela a resposta...
Vc lê o arquivo .ini no login, mas em qual momento o IBDataBase está recebendo o caminho da conexão? Na minha opinião, o correto seria vc ler o .ini o OnCreate do DataModule...
T+
GOSTEI 0
Amilton/pr
16/08/2004
Seguinte . . .
Onde exatamente eu defino:
localhost:C:\Saude\Saude.gdb no servidor?
A mensagem de erro é aquela do windows:
[Executavel]encontrou problemas e precisa ser fechado;
Tem detalhes assim:
appName: Dpr001.exe AppVer 0.0.0.0 ModName: Kernel32.dll
É no OnCreate do DataModule que estou recebendo o arvquivo .ini, antes coloquei-o num edit e ficou assim:
procedure TdataM.DataModuleCreate(Sender: TObject);
begin
try
Ibdata1.databaseName:=F_Senha.edit5.text;
Ibdata1.Connected:=true;
showmessage(´banco conectado´);
except
showmessage(´banco nao conectado´);
end;
end;
Essas mensagens aparece na estação, depois é que dá as mensagens de erro. Eu não sei extamente pra onde o programa está indo na sua execução, pela lógica deveria executar o formulário de senha, coloquei uma mensagem no OnActivat mas o sistema não chega nela, o erro é antes, embora tenha colocado mensagem no OnCreate desse form e mostrou normalmente. Parece que o Erro está ocorrendo ai, depois do Oncreate do DataModule e antes de ativar o formulário da Senha.
Agradeço que puder ajudar!
Onde exatamente eu defino:
localhost:C:\Saude\Saude.gdb no servidor?
A mensagem de erro é aquela do windows:
[Executavel]encontrou problemas e precisa ser fechado;
Tem detalhes assim:
appName: Dpr001.exe AppVer 0.0.0.0 ModName: Kernel32.dll
É no OnCreate do DataModule que estou recebendo o arvquivo .ini, antes coloquei-o num edit e ficou assim:
procedure TdataM.DataModuleCreate(Sender: TObject);
begin
try
Ibdata1.databaseName:=F_Senha.edit5.text;
Ibdata1.Connected:=true;
showmessage(´banco conectado´);
except
showmessage(´banco nao conectado´);
end;
end;
Essas mensagens aparece na estação, depois é que dá as mensagens de erro. Eu não sei extamente pra onde o programa está indo na sua execução, pela lógica deveria executar o formulário de senha, coloquei uma mensagem no OnActivat mas o sistema não chega nela, o erro é antes, embora tenha colocado mensagem no OnCreate desse form e mostrou normalmente. Parece que o Erro está ocorrendo ai, depois do Oncreate do DataModule e antes de ativar o formulário da Senha.
Agradeço que puder ajudar!
GOSTEI 0
Vinicius2k
16/08/2004
Resumindo :
O caminho para utilizar a aplicação no servidor deve ser :
[b:61e9f1be6c]localhost:c:\saude\saude.gdb[/b:61e9f1be6c]
O caminho para as estações deve ser :
[b:61e9f1be6c]192.168.1.11:c:\saude\saude.gdb[/b:61e9f1be6c]
Estah um pouco difícil definir onde e qual erro está ocorrendo...
1. Quando vc recebe estas mensagens a aplicação está aberta no servidor? Se sim é pq a configuração do caminho no servidor está incorreta e vc deve usar a que eu mostrei acima...
2. Tenho o palpite de que o problema está aqui... Vi vc falando sobre TIBClientDataSet... vc removeu tudo o que os envolvia? se não removeu vc precisa colocar na estação e registrar a midas.dll (copiar para o system e executar no prompt regsvr32 midas.dll)
3. Vc precisa testar se vc só não está conseguindo conectar-se através da aplicação... tente, na estação, conectar-se ao banco com outra ferramenta, como IBExpert ou IBOConsole... se vc conseguir conectar-se com outra ferramenta, podemos descartar qualquer problema na rede e com as instalações de servidor e cliente do Firebird...
T+
O caminho para utilizar a aplicação no servidor deve ser :
[b:61e9f1be6c]localhost:c:\saude\saude.gdb[/b:61e9f1be6c]
O caminho para as estações deve ser :
[b:61e9f1be6c]192.168.1.11:c:\saude\saude.gdb[/b:61e9f1be6c]
Estah um pouco difícil definir onde e qual erro está ocorrendo...
1. Quando vc recebe estas mensagens a aplicação está aberta no servidor? Se sim é pq a configuração do caminho no servidor está incorreta e vc deve usar a que eu mostrei acima...
2. Tenho o palpite de que o problema está aqui... Vi vc falando sobre TIBClientDataSet... vc removeu tudo o que os envolvia? se não removeu vc precisa colocar na estação e registrar a midas.dll (copiar para o system e executar no prompt regsvr32 midas.dll)
3. Vc precisa testar se vc só não está conseguindo conectar-se através da aplicação... tente, na estação, conectar-se ao banco com outra ferramenta, como IBExpert ou IBOConsole... se vc conseguir conectar-se com outra ferramenta, podemos descartar qualquer problema na rede e com as instalações de servidor e cliente do Firebird...
T+
GOSTEI 0
Amilton/pr
16/08/2004
seguinte . . .
//O caminho para utilizar a aplicação no servidor deve ser :
// localhost:c:\saude\saude.gdb
Funcionou legal assim.
O caminho para as estações deve ser :
192.168.1.11:c:\saude\saude.gdb
Na estação já esta assim:
O erro aparece com o programa aberto ou não no servidor;
Dei uma geral no sistema e parece não haver nada sobre TIbClientDataSet;
Sobre registrar o midas.dll . . . copiei a dll pro system da estação; o comando regsrv32 midas.dll não rodou, acusa que não tem esse comando.
Instalei a versão Server na estação também e o IbExpert 2004. Tesntei acessar a tabela no servidor através da rede e deu o seguinte:
´unsuccessul execution cased by a system error that precludes successul execution of subsequent statements.
I/O error for file ´Hd_Amilton\Saude\saude.gdb´ .
Error While try to open file .
O sistema não ode encontrar o caminho especificado ´
Realmente a estação parece não encontrar o caminho . . . mas isso precisa ter uma saída. Agradeço a quem puder ajudar!!!
//O caminho para utilizar a aplicação no servidor deve ser :
// localhost:c:\saude\saude.gdb
Funcionou legal assim.
O caminho para as estações deve ser :
192.168.1.11:c:\saude\saude.gdb
Na estação já esta assim:
O erro aparece com o programa aberto ou não no servidor;
Dei uma geral no sistema e parece não haver nada sobre TIbClientDataSet;
Sobre registrar o midas.dll . . . copiei a dll pro system da estação; o comando regsrv32 midas.dll não rodou, acusa que não tem esse comando.
Instalei a versão Server na estação também e o IbExpert 2004. Tesntei acessar a tabela no servidor através da rede e deu o seguinte:
´unsuccessul execution cased by a system error that precludes successul execution of subsequent statements.
I/O error for file ´Hd_Amilton\Saude\saude.gdb´ .
Error While try to open file .
O sistema não ode encontrar o caminho especificado ´
Realmente a estação parece não encontrar o caminho . . . mas isso precisa ter uma saída. Agradeço a quem puder ajudar!!!
GOSTEI 0
Vinicius2k
16/08/2004
[quote:294aec7d75=´Amilton/Pr´]Sobre registrar o midas.dll . . . copiei a dll pro system da estação; o comando [b:294aec7d75]reg[color=red:294aec7d75]srv[/color:294aec7d75]32[/b:294aec7d75] midas.dll não rodou, acusa que não tem esse comando.[/quote:294aec7d75]
é REGSVR32 midas.dll
[quote:294aec7d75=´Amilton/Pr´]Instalei a versão Server na estação também[/quote:294aec7d75]
Não precisava... uma ferramenta é como um cliente normal... basta ter o Firebird Client para que ela rode e seja capaz de acessar o banco normalmente...
[quote:294aec7d75=´Amilton/Pr´]Tesntei acessar a tabela no servidor através da rede e deu o seguinte:
´unsuccessul execution cased by a system error that precludes successul execution of subsequent statements.
I/O error for file ´[color=red:294aec7d75]Hd_Amilton\Saude\saude.gdb[/color:294aec7d75]´ .
Error While try to open file .
O sistema não ode encontrar o caminho especificado ´[/quote:294aec7d75]
Vc tem que colocar na ferramenta (IBExpert) o servidor como ´remote´ e indicar no caminho do banco o mesmo caminho que vc está indicando nas estações para a sua aplicação : 192.168.1.11:c:\saude\saude.gdb
O IBExpert é soh um cliente como seria sua aplicação...
Faça o teste corretamente com o IBExpert e retorne... se vc conseguir acessar o banco com ele, vc vai ter isolado o problema -- a aplicação...
T+
é REGSVR32 midas.dll
[quote:294aec7d75=´Amilton/Pr´]Instalei a versão Server na estação também[/quote:294aec7d75]
Não precisava... uma ferramenta é como um cliente normal... basta ter o Firebird Client para que ela rode e seja capaz de acessar o banco normalmente...
[quote:294aec7d75=´Amilton/Pr´]Tesntei acessar a tabela no servidor através da rede e deu o seguinte:
´unsuccessul execution cased by a system error that precludes successul execution of subsequent statements.
I/O error for file ´[color=red:294aec7d75]Hd_Amilton\Saude\saude.gdb[/color:294aec7d75]´ .
Error While try to open file .
O sistema não ode encontrar o caminho especificado ´[/quote:294aec7d75]
Vc tem que colocar na ferramenta (IBExpert) o servidor como ´remote´ e indicar no caminho do banco o mesmo caminho que vc está indicando nas estações para a sua aplicação : 192.168.1.11:c:\saude\saude.gdb
O IBExpert é soh um cliente como seria sua aplicação...
Faça o teste corretamente com o IBExpert e retorne... se vc conseguir acessar o banco com ele, vc vai ter isolado o problema -- a aplicação...
T+
GOSTEI 0
Amilton/pr
16/08/2004
Blz.
O registro do Midas.dll funcionou legal.
Acessei as tabelas do sistema via IbExpert colocando o IP como vc. disse e realmente funcionou; acessou as tabelas do sistema no servidor, agora acredito que o problema pode estar no aplicativo.
Bom . . . faço a conexão com o banco no Evento OnCreate do DataModule, assim:
procedure TdataM.DataModuleCreate(Sender: TObject);
begin
try
Ibdata1.databaseName:=F_Senha.edit5.text;
Ibdata1.Connected:=true;
showmessage(´banco conectado´);
except
showmessage(´banco nao conectado´);
end;
end;
Depois não sei exatamente o que está acontecendo porque deveria ir pro formulario de senha. Coloquei mensagens no OnCreate desse form e funcionou tbém, depois coloquei uma mensagem no OnActivate e ela não mostra, então não está chegando.
Muito obrigado pela atenção, mas ainda continuo precisando de ajuda!
O registro do Midas.dll funcionou legal.
Acessei as tabelas do sistema via IbExpert colocando o IP como vc. disse e realmente funcionou; acessou as tabelas do sistema no servidor, agora acredito que o problema pode estar no aplicativo.
Bom . . . faço a conexão com o banco no Evento OnCreate do DataModule, assim:
procedure TdataM.DataModuleCreate(Sender: TObject);
begin
try
Ibdata1.databaseName:=F_Senha.edit5.text;
Ibdata1.Connected:=true;
showmessage(´banco conectado´);
except
showmessage(´banco nao conectado´);
end;
end;
Depois não sei exatamente o que está acontecendo porque deveria ir pro formulario de senha. Coloquei mensagens no OnCreate desse form e funcionou tbém, depois coloquei uma mensagem no OnActivate e ela não mostra, então não está chegando.
Muito obrigado pela atenção, mas ainda continuo precisando de ajuda!
GOSTEI 0
Vinicius2k
16/08/2004
Ótimo. O problema foi isolado...
Deixe-me entender uma coisa...
Vc tenta se conectar ao banco no OnCreate do DataModule, buscando um valor presente no formulário de senha correto?
Bem, normalmente, meus DataModules são criados logo após o formulário principal da aplicação, e são os únicos que eu deixo para serem criados automaticamente (todos os outros eu crio e destruo dinamicamente)...
Se na sua sequencia de criação o DataModule estiver sendo criado antes do form de senha, o form de senha ainda não existe, logo ele não pode ceder nenhum valor para nenhum outro... seria normal até que vc tivesse uma mensagem tipo ´Access Violation at address ...... ´
Na minha opinião, o mais correto é vc ler o diretamente .ini onde está a configuração do caminho do banco, no OnCreate do DataModule e não buscar o valor de um outro form, que, pode não existir ainda...
Acho que seu problema está na sequencia em que vc está trabalhando a entrada das informações...
Verifique estas situações e retorne... tenha paciência que chegaremos lá :wink:
T+
Deixe-me entender uma coisa...
Vc tenta se conectar ao banco no OnCreate do DataModule, buscando um valor presente no formulário de senha correto?
Bem, normalmente, meus DataModules são criados logo após o formulário principal da aplicação, e são os únicos que eu deixo para serem criados automaticamente (todos os outros eu crio e destruo dinamicamente)...
Se na sua sequencia de criação o DataModule estiver sendo criado antes do form de senha, o form de senha ainda não existe, logo ele não pode ceder nenhum valor para nenhum outro... seria normal até que vc tivesse uma mensagem tipo ´Access Violation at address ...... ´
Na minha opinião, o mais correto é vc ler o diretamente .ini onde está a configuração do caminho do banco, no OnCreate do DataModule e não buscar o valor de um outro form, que, pode não existir ainda...
Acho que seu problema está na sequencia em que vc está trabalhando a entrada das informações...
Verifique estas situações e retorne... tenha paciência que chegaremos lá :wink:
T+
GOSTEI 0
Gandalf.nho
16/08/2004
Já que você usa a paleta IBX, experimente usar o componete IBDatabaseINI que facilita na hora de usar um arqjuivo INI com os dados da conexão.
GOSTEI 0
Amilton/pr
16/08/2004
Blz. Funcionou legalzinho!
Fiz a conexão com o banco no OnCreate do DataModule e em seguida criei o formulário de senha, funcionou legal mesmo . . . Meus agradecimentos sem tamanho a todos que colaboraram e especialmente para vinicus2K que me ajudou demais;
mas que Gandalf.nho mencionou o componente IbDatabaseIni pra fazer conexão com arquivos .Ini, como é extamente a configuração desse componente usando arquivos .ini?
Fiz a conexão com o banco no OnCreate do DataModule e em seguida criei o formulário de senha, funcionou legal mesmo . . . Meus agradecimentos sem tamanho a todos que colaboraram e especialmente para vinicus2K que me ajudou demais;
mas que Gandalf.nho mencionou o componente IbDatabaseIni pra fazer conexão com arquivos .Ini, como é extamente a configuração desse componente usando arquivos .ini?
GOSTEI 0
Vinicius2k
16/08/2004
Blz ! :)
Bem, agora eu vou pedir que a Gandalf ou outro colega assuma, pq este componente do IBX eu nunca utilizei...
T+
Bem, agora eu vou pedir que a Gandalf ou outro colega assuma, pq este componente do IBX eu nunca utilizei...
T+
GOSTEI 0
Gandalf.nho
16/08/2004
Primeira coisa deixe a propriedade AllowStreamedConnected do IBDatabase com False. Coloque o componente IBDatabaseINI e configure sua propriedade Database de acordo. Na propriedade FileName você irá pôr o nome de seu arquivo INI que deverá conter os parâmetros de conexão para o banco de maneira semelhante a propriedade Params do próprio IBDatabase. O nome da seção onde o componente irá procurar as informações (se quiser usar o INI para outras coisas tb) é o que aparece na propriedade Section. Um exemplo para você entender:
[b:6c21c6677c][Database Settings][/b:6c21c6677c]
[b:6c21c6677c]database=[/b:6c21c6677c]caminho_banco_dados
[b:6c21c6677c]user_name=[/b:6c21c6677c]nome_usuário
[b:6c21c6677c][b]sql_role_name=[/b:6c21c6677c]nome_role
lc_ctype=[/b]nome_charset (no meu caso, WIN1252)
Em tempo de execução basta ativar o IBDatabase que o IBDatabaseINI automaticamente irá pegar as informações e repassar ao componente de conexão sem precisar nenhuma linha de código.
[b:6c21c6677c][Database Settings][/b:6c21c6677c]
[b:6c21c6677c]database=[/b:6c21c6677c]caminho_banco_dados
[b:6c21c6677c]user_name=[/b:6c21c6677c]nome_usuário
[b:6c21c6677c][b]sql_role_name=[/b:6c21c6677c]nome_role
lc_ctype=[/b]nome_charset (no meu caso, WIN1252)
Em tempo de execução basta ativar o IBDatabase que o IBDatabaseINI automaticamente irá pegar as informações e repassar ao componente de conexão sem precisar nenhuma linha de código.
GOSTEI 0
Amilton/pr
16/08/2004
Uma curiosidade . . .
Gandalf.nho é mulher?
Gandalf.nho é mulher?
GOSTEI 0
Amilton/pr
16/08/2004
Colegas, acredito que esse tópico foi resolvido com sucesso, agradeço imensamente a participação de todos que além de resolverem o meu problema podem ter ajudado a outros também a esclarecerem dúvidas a respeito da configuração do banco em rede, e, aproveito pra comunicar que estou abrindo um novo tópico sobre o uso de componentes pra acesso as tabelas do banco num sistema já que temos algumas opções e uso correto pode determinar um melhor desempenho de tudo que envolve o perfeito funcionamento do aplicativo; Gostaria que houve a participação de todos, especialmente de AFarias, Vinicius2K, Gandalf.nho . . . enfim todos que se interessarem.
Meu muito obrigado a todos!!!
Meu muito obrigado a todos!!!
GOSTEI 0
Afarias
16/08/2004
[quote:fa4d6475da=´Amilton/Pr´]Uma curiosidade . . .
Gandalf.nho é mulher?[/quote:fa4d6475da]
BINGO!
;)
T+
Gandalf.nho é mulher?[/quote:fa4d6475da]
BINGO!
;)
T+
GOSTEI 0