Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Conexión con bases de datos
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Conexión con bases de datos

 
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 07-03-2012
Chandra_ Chandra_ is offline
Miembro
 
Registrado: may 2008
Posts: 50
Poder: 16
Chandra_ Va por buen camino
Firebird, Interbase, dbexpress, gds32.dll y fbclient.dll: Aclarando cunfusiones

Hola. Después de estar varias horas rebuscando por los foros y encontrar bastantes post contradictorios o confusos, me he decidido a hacer una prueba para comprobar el manido asunto de la librería que hay que usar dentro de Delphi cuando se utiliza Firebird. Corregidme en lo que me haya equivocado, por favor. Allá voy:

En realidad, cuando se instala Delphi (2007 en mi caso), si no se instala después Interbase desde el CD, no se instala (obviamente) GDS32.DLL. He probado a echar a andar una miniaplicación con un DataSet (ConnectionName: IBConnection; DriverName: Interbase; VendorLib: GDS32.DLL), un DataSource y un Grid (lo del Grid es puramente neurótico) y me dice (como es lógico) que no encuentra GDS32.DLL.

Más tarde, instalo FireBird (2.5) y ahora funciona la estructura anterior (como era de esperar). ¿Por qué? Pues porque FireBird instala un reemplazo especial de la librería GDS32.DLL. Esa librería redirecciona las llamadas a Interbase a nuestra querida librería FBCLIENT.DLL. Delphi cree que está usando Interbase (porque llama a GDS32.DLL), pero en realidad está trabajando con FireBird.

Esto que a los más experimentados puede parecerles de lo más obvio, a mi me ha costado un día de estrujar al Google. Pero qué a gusto me he quedado

Supongo que Delphi XE o XE2 (no recuerdo ahora cuál era), con su driver especial para Firebird vendrá a paliar alguna incompatibilidad (que desconozco, pero intuyo) que pueda generar esta forma de trabajar (hacerle creer a Delphi que usa un driver de Interbase cuando, realmentem usa Firebird... que es un fork bastante separado ya de Interbase).

Lo que no me queda claro es lo siguiente:

Yo suelo ser bastante neurótico con las instalaciones. Llevo años trabajando con Delphi corriendo sobre XP (y ahora Windows 7) en máquinas virtuales VirtualBox (antes VMware) en Linux. Me funciona de maravilla y puedo ir hacia atrás en el tiempo fácilmente con el sistema de snapshots, instantáneas o como se le quiera llamar. Quiero decir con esto que procuro hacer una instalación escrupulosa del sistema y hago inmediatamente una foto, para poder volver a ella si es necesario. En esa instalación, que me suele acompañar varios años, nunca instalo Interbase, pues sé que voy a usar Firebird; sin embargo... si alguien ha instalado Interbase, se supone que FireBird sobreescribe GDS32.DLL para sustituirlo con su versión... ¿no?
Responder Con Cita
 



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
Al intentar conectame a una interbase 'Access violation en module gds32.dll' eyscom Firebird e Interbase 4 10-03-2010 10:48:35
gds32 o fbclient Leonardo Conexión con bases de datos 1 06-06-2006 11:53:46
DbExpress o interbase felixgo Conexión con bases de datos 0 27-09-2005 12:20:43
InterBase + dbExpress y CGI Slash Internet 4 27-04-2004 15:52:40
dbExpress e Interbase SKaRCHa Firebird e Interbase 6 08-05-2003 14:42:29


La franja horaria es GMT +2. Ahora son las 08:18:13.


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