Ir al contenido


Foto

Programa con Base embedded


  • Por favor identifícate para responder
2 respuestas en este tema

#1 masanhue

masanhue

    Newbie

  • Miembros
  • Pip
  • 1 mensajes

Escrito 18 agosto 2013 - 12:02

Hola, quisiera consultar respecto a una duda sobre una base embedded. Actualmente en el trabajo tenemos un sistema de vigilancia con camaras IP y analitica de video a traves del software DIGIFORT, revisando encontre que los datos de la analitica de video son almacenados en una base de datos Firebird (DIGIFORTDB.FDB), la he revisado y contiene los datos y registros que necesito.
Mi problema es que por lo que vi y por lo poco que se de firebird, esta base corre en forma embedded con la aplicacion y yo lo que necesito es acceder a la base de datos en tiempo real sin bloquear la aplicacion de la camara para poder generar algunos informes que no estan contemplados en el software DIGIFORT
¿Esto es factible?, puedo leer esta base embedded que usa la aplicacion, ¿es necesario que instala el servidor de firebird para poder hacerlo? y en ese caso ¿me va a bloquear la aplicacion de las camaras y no podran guardar los datos de los eventos?
En definitiva, necesito extraer y/o visualizar los datos de esa base en tiempo real sin afectar a la otra aplicacion.
No se si me explico bien, ojala me puedan orientar. Gracias.
Mario
  • 0

#2 TiammatMX

TiammatMX

    Advanced Member

  • Miembros
  • PipPipPip
  • 1.750 mensajes
  • LocationUniverso Curvo\Vía Láctea\Sistema Solar\Planeta Tierra\América\México\Ciudad de México\Xochimilco\San Gregorio Atlapulco\Home

Escrito 19 agosto 2013 - 09:18

...¿Esto es factible?...

¡¡Por supuesto!! "Embedded" se refiere al MOTOR de la base de datos, no a los datos.


...¿es necesario que instala el servidor de firebird para poder hacerlo? y en ese caso ¿me va a bloquear la aplicacion de las camaras y no podran guardar los datos de los eventos?...

Pues sí, tal vez deberías..., o podrías usar Firebird en modo Embedded, para "rizar el rizo".

...y en ese caso ¿me va a bloquear la aplicacion de las camaras y no podran guardar los datos de los eventos?...

No tendría por qué bloquear las tablas, al contrario..., pero digo, si estás inseguro, no tienes otra opción que experimentarlo por tí mismo.

...En definitiva, necesito extraer y/o visualizar los datos de esa base en tiempo real sin afectar a la otra aplicacion...

Pues adelante, compañero. Suerte. No deberías tener mayor problema.
  • 0

#3 Sergio

Sergio

    Advanced Member

  • Moderadores
  • PipPipPip
  • 1.092 mensajes
  • LocationMurcia, España

Escrito 22 agosto 2013 - 12:55

La version embeded solo admite conexiones locales, no puedes conectar desde otro equipo, pero es muy sencillo cambiar la versión embeded por la "normal" sin que esto afecte en nada a las aplicaciones que ya usasen esos datos, mo se van ni a enterar, vamos.

Mira junto al ejecutable de digifor, deberías ver un fichero fbclient.dll, ese fichero normalmente es la libreria "cliente" de firebird, pero en la version embeded, es el cliente Y el servidor en un solo fichero.

Lo primero es ver que versión de firebird usa, para ponerle esa misma. Mira en las propiedades de fbclient.dll y localiza la versión, será algo como 2.1 o similar. Vete a la zona de descargas de firebird y localiza esa misma version en instalador para windows, y lo instalas sin miedo.

En la carpeta donde se instalo firebird, veras una carpeta "BIN" y dentro un fbclient.dll como el de antes, pero esta vez en lugar de 2 megas sera de 0.5 aproximadamente, es porque este es solo el cliente, y el servidor lo tienes instalado como un servicio. Copiate ese fichero.

Ahora, donde al principio encontraste el fbclient.dll "gordo", lo renombras por si acaso y pegas el nuevo.

Ya lo tienes, si inicias la aplicación digifor, podrá acceder a su base de datos sin problemas, y no notará que firebird es ahora el "completo".

Respecto de tu aplicación, copiale el fbclient.dll tambien junto al ejecutable, y accede a la base de datos como de costumbre, usando como ruta de base de datos algo como esto:

192.168.1.12:C:\Datos\MisDatos.fdb

Si algo te falla, comentalo, pero es tan sencillo como instalar firebird y sustituir las dll.

Ah! Un detalle, esa dll esta hecha con msvc++ asi que igual en un PC te pide instalar las librerias runtime de microsoft, esas dll tambien están en BIN de firebird, copialas junto a fbclient.dll y te ahorras problemas.
  • 0




IP.Board spam blocked by CleanTalk.