Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 15-11-2016
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Posts: 1.350
Poder: 19
Angel.Matilla Va por buen camino
¿Está activo FB?

Esta pregunta no sé si debe ir aquí o en el subforo de C++ Builder. Tengo una aplicación hecha en BCB 6 con FB 2.5 y me ha surgido una duda: ¿Hay alguna forma de saber si está instalado y ejecutándose dicho motor? Sobre todo teniendo en cuenta que puede instalarse como servicio o como programa, aunque yo recomiendo instalarlo como servicio. Ahora tengo este código:
Código PHP:
if (GetWindow(GetDesktopWindowGW_HWNDNEXT) == FindWindow("FB_Server""Firebird Server")  && // Ver 1.5
    
GetWindow(GetDesktopWindowGW_HWNDNEXT) == FindWindow("IB_Server""InterBase Server"))    // Ver 1.0
     
return false;
else
     return 
true
pero he comprobado que no funciona bien o no soy capaz de "ejecutarlo" bien.
Responder Con Cita
  #2  
Antiguo 15-11-2016
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Posts: 1.350
Poder: 19
Angel.Matilla Va por buen camino
Dicho de otra forma: Me da la impresión que si bsucamos un servicio, con ese código no se encuentra si está ejecutándose o no.
Responder Con Cita
  #3  
Antiguo 15-11-2016
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.057
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Depende de la versión, tendrás que verificar un servicio u otro:
Código:
Superserver -> fbserver
Classicserver -> fb_inet_server
Superclassic -> fb_smp_server
Responder Con Cita
  #4  
Antiguo 15-11-2016
Avatar de ecfisa
ecfisa ecfisa is offline
Moderador
 
Registrado: dic 2005
Ubicación: Tres Arroyos, Argentina
Posts: 10.508
Poder: 36
ecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to beholdecfisa is a splendid one to behold
Hola.

Fijate si te sirve esta opción,

checkFirebird.h:
Código PHP:
#ifndef checkFirebirdH
#define checkFirebirdH

bool isFirebirdRunningvoid );

#endif 
checkFirebird.cpp:
Código PHP:
#pragma hdrstop

#include "checkFirebird.h"
#include "WinSvc.hpp"

#pragma package( smart_init )

DWORD ServiceStatus( const char* &sMachine, const char* &sService )
{
  
SC_HANDLE schmschs;
  
TServiceStatus ss;
  
DWORD dwStat 0;

  
schm OpenSCManagersMachineNULLSC_MANAGER_CONNECT );

  if ( 
schm ) {
    
schs OpenServiceschmsServiceSERVICE_QUERY_STATUS );

    if ( 
schs ) {
      if ( 
QueryServiceStatus schs, &ss ) )
        
dwStat ss.dwCurrentState;
      
CloseServiceHandleschs );
    }

    
CloseServiceHandle schm );
  }
  return 
dwStat;
}

bool isFirebirdRunningvoid )
{
  return 
ServiceStatus"""FirebirdServerDefaultInstance" ) == SERVICE_RUNNING;

Ejemplos de uso:
Código PHP:
...

#include "checkFirebird.h"

...

void __fastcall TForm1::ButtonCheckClickTObject *Sender )
{
  
ShowMessage( (isFirebirdRunning() ? "Servicio de Firebird activo" "Servicio de Firebird inactivo") );
  ...
  if ( 
isFirebirdRunning() )
  ... 
Saludos
__________________
Daniel Didriksen

Guía de estilo - Uso de las etiquetas - La otra guía de estilo ....
Responder Con Cita
  #5  
Antiguo 16-11-2016
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Posts: 1.350
Poder: 19
Angel.Matilla Va por buen camino
Gracias a los dos. En cuanto pueda lo probaré y os diré como ha ido.
Responder Con Cita
  #6  
Antiguo 22-11-2016
Avatar de Angel.Matilla
Angel.Matilla Angel.Matilla is offline
Miembro
 
Registrado: ene 2007
Posts: 1.350
Poder: 19
Angel.Matilla Va por buen camino
ecfisa: Gracias. Funciona a la perfección.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Detectar si un proceso esta activo. deliriun Varios 3 22-09-2015 12:25:54
Saber si un proceso esta activo Anel Hernandez Varios 3 17-01-2012 19:17:16
Como saber si mi servidor de MySQL esta activo o corriendo. rgstuamigo MySQL 5 19-11-2008 22:54:01
Cómo comprobar que el servidor está activo. afxe Conexión con bases de datos 2 09-05-2006 19:31:17
Pregunta básica. Como saber si un valor está activo o no. gluglu Varios 3 16-09-2004 18:34:53


La franja horaria es GMT +2. Ahora son las 21:25:38.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi