[firebase-br] Descobrir qual a versão do FB esta sendo carregada

Rodrigo firebase em dominioinf.com.br
Sex Out 19 09:00:41 -03 2012


Desculpem, talvez nao tenha me expressado bem...

O firebird não esta carregado, entao, logo não consigo fazer consultas e  a 
dica do Sandro só funciona na Versão 2.1 em diante
sendo que a versão que preciso verificar a versão é a 2.0.3.

Tenho na mesma maquina Versão 2.0 e 2.5.   A versão 2.0 na porta 3050 e a 
versão 2.5 na porta 3060. Instanciei o Firebird 2.5
no bin do firebird usando o comando instsvc i -a -s -g -n FIREBIRD_2_5 
conforme dica no site do firebase.

O problema:
As vezes não abre os dois Firebirds. Então para garantir que os dois vão ser 
realmente carregados, verifico se o servidor esta ativo
O FBGuard. Se ele não estiver ativo então a minha rotina abre ele.

// aqui carrego o 2.0
if FileExists('C:\Arquivos de 
programas\Firebird\Firebird_2_0\bin\fbguard.exe') then
if not ISFILEACTIVE('FBGUARD.EXE') then
winexec('C:\Arquivos de 
programas\Firebird\Firebird_2_0\bin\fbguard.exe -a',0);  // se nao estiver 
carregado carrega aqui;

// aqui carrego o 2.5  ---- aqui não carrega pq na função ISFILEACTIVE ja 
carregou anteriormente o FBGuard entao ele vai retornar como true agora
if FileExists('C:\Arquivos de 
programas\Firebird\Firebird_2_5\bin\fbguard.exe') then
if not ISFILEACTIVE('FBGUARD.EXE') then     // aqui esta o problema, como o 
FBGuard ja carregou o 2.0 entao ele não processa a chamada winexec do 2.5.
winexec('C:\Arquivos de 
programas\Firebird\Firebird_2_5\bin\fbguard.exe -a',0);  // se nao estiver 
carregado carrega aqui;

O que eu necessito:
De uma função que verifique a versão do firebird ativo no momento para 
verificar se o que esta carregado é a 2.0 ou a 2.5 para mim
poder dar continuidade a abertura do 2.5.

Grato,




-----Mensagem Original----- 
From: Julio Francisco Figueiredo
Sent: Thursday, October 18, 2012 11:38 AM
To: FireBase
Subject: Re: [firebase-br]Descobrir qual a versão do FB esta sendo carregada

Se ambos estiverem na mesma porta vc pode usar a query do Sandro e
verificar a versão, ai é só vc parar e iniciar o serviço q vc deseja da
versão que vc quer

________________________________________
Att,
*Julio F. Figueiredo*
*Analista de Sistemas*


Em 18 de outubro de 2012 11:27, Sandro Souza
<escovadordebits em gmail.com>escreveu:

> Bom dia/tarde Rodrigo.
>
> Imagino que essas duas versões estão usando portas servidoras diferentes,
> não é isso?
>
> Nesse caso, a simples tentativa de conectar em uma base de dados por 
> aquela
> determinada porta servidora já serviria para detectar se aquela versão do
> Firebird estaria ou não no ar.
>
> Se logo após ter conectado, você ainda quiser ter certeza da versão que
> está rodando, pode executar a seguinte consulta:
>
> *SELECT RDB$GET_CONTEXT('SYSTEM','ENGINE_VERSION')FROM RDB$DATABASE*
>
> Essa consulta retornará o número da versão do Firebird como uma string
> (VARCHAR ou CHAR).
>
> Espero ter ajudado mais que atrapalhado. :D
>
> Em 18 de outubro de 2012 11:11, Rodrigo <firebase em dominioinf.com.br
> >escreveu:
>
> >
> > Bom dia  a todos,
> >
> > Tenho um cliente que usa 2 firebirds instalados na maquina, 2,0 e 2,5
> >
> > entao, fiz uma rotina para quando o cliente entrar no sistema, verificar
> > se o firebird esta ativo,
> > se não estiver, ativa antes de entrar no sistema.
> >
> > O problema que ocorre é que se estiver carregado o 2.0 tenho uma função
> > que verifica se ja esta carregado, e como
> > ja esta carregado, ele não carrega o 2,5.
> >
> > Estou tentando descobrir se tem uma forma de verificar qual a versão do
> > firebird que esta carregado,
> > tipo se a versão 2.0 estiver carregada, ele carrega so a versão 2.5. Se
> > somente a 2.5 estiver carregada,
> > entao ele abre a 2.0. Se as duas estiverem carregadas, entao, nao faz a
> > rotina de carregamento.
> >
> > Se alguem puder ajudar
> >
> > Grato,
> >
> > ______________________________**________________
> > FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> > Para saber como gerenciar/excluir seu cadastro na lista, use:
> > http://www.firebase.com.br/fb/**artigo.php?id=1107<
> http://www.firebase.com.br/fb/artigo.php?id=1107>
> > Para consultar mensagens antigas: http://firebase.com.br/**pesquisa<
> http://firebase.com.br/pesquisa>
> >
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>
______________________________________________
FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
Para saber como gerenciar/excluir seu cadastro na lista, use: 
http://www.firebase.com.br/fb/artigo.php?id=1107
Para consultar mensagens antigas: http://firebase.com.br/pesquisa 





Mais detalhes sobre a lista de discussão lista