Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Firebird e Interbase (https://www.clubdelphi.com/foros/forumdisplay.php?f=19)
-   -   aplicacion delphi xe3 e interbase xe3 (https://www.clubdelphi.com/foros/showthread.php?t=89268)

Espartaco 26-10-2015 20:34:15

aplicacion delphi xe3 e interbase xe3
 
Hola de nuevo amigos, pero estoy desesperado.
Tengo Delphi XE3 e InterBase XE3 (o veersion once como pone en el IbConsole).
Yo he trabajado siempre con delphi 5 y Paradox y no he tenido problemas para distribuir la aplicacion con install Shield que me instalaba el BDE y el exe generado al compilar la aplicacion.

Bueno pues he empezado a trabjar con XE3, la aplicacion me funciona perfectamente, pero tengo serios problemas para que funcione en otros pc.
Es una base de datos Interbase Local.
Tengo entendido que para distribuirla tengo que usar deploy pero cuando intento ejecutarlo resulta que me pregunta que un remote profile es requerido para deployment, que si quiero crear uno. Si le digo que si no se que me esta pidiendo porque si le pongo en hostname la ruta de la bd localhost:c:\... y le doy a test me dice que socket error. El caso es que si le diigo que no quiero crear el archivo remote profile, me crea el ejecutable en la carpeta win32\release. La verdad no se porque me pide el archivo remote profile si yo la bd la he creado local y la he conectado desde delphi en modo local.

El caso es que si copio el ejecutable y los archivos adicionales como gds32.dll, etc. que he ido viendo por diferentes hilos, la aplicacion no me funciona. En windows xp me dice que el ejecutable ha detectado un problema y debe cerrarse. Y si lo hago en windows 7 me dice que la aplicacion ha causado un error y debe cerrarse y cuando la cierro me da un error de InterBase de unavaible database.

Estoy desesperado, he probado hacerlo con firebird 2.5 y me pasa lo mismo. La aplicacion funciona perfectamente en el ordenador donde tengo delphi y esta con interbase, como es una aplicacion que va a ser local y simple desearia dejarla en interbase.

No se que estoy haciendo mal, si compilandolo o que. Cuando hago el deployment añado los archivos interbase client win32, pero no me deja hacer deploy para generar el ejecutable final.

Me he extendido un poco porque ya he hecho muchas pruebas y me esta esperando el cliente. Francamente, estoy pensando en volver a delphi5 y paradox, lo que pasa es que he visto muchos hilos diciendo que paradox es muy inestable y que interbase o firebird no tienen comparacion.

Les rogaria una ayuda en breve, de antemano muchas gracias y un saludo desde Sevilla.

Casimiro Notevi 26-10-2015 21:26:33

A ver, si usas el servidor firebird o interbase, tendrás que instalarlo primero.
Eso puedes hacerlo desde el instalador (busca información al respecto) o puedes instalarla manualmente primero y luego instalar tu programa.
Si usas firebird "embebido" es diferente, la versión es distinta, los pasos son distintos, pero eso está explicado paso a paso en la web de firebird y en varios hilos de estos foros.
Estás liándote tú mismo, debes detenerte, pensar qué quieres conseguir exactamente y luego actuar paso a paso.

Espartaco 27-10-2015 09:51:04

Gracias por tu respuesta Casimiro. Entones que hago primero en el ordenador del cliente, instalar el servidor de InterBase con el disco de instalación de Delphi XE3, que se supone trae el Interbase?

Es que mirando los hilos siempre he visto que solo hay que poner las Dll correspondientes.

Con interbase embebido lo he intentado tambien pero no lo consigo algo hago mal seguro.

Y con respecto a lo del deploy, no hace falta para que funcione mi aplicacion, y solo tengo que compilar?

Liado estoy seguro, he leido tantos hilos que me he hecho un nudo, a ver si puedo deshacerlo de una vez.

Gracias.

Neftali [Germán.Estévez] 27-10-2015 09:56:09

Tienes que separar entre el EXE y el resto de cosas que necesita tu aplicación.
En tu caso, si estás utilizando IB/FB, tal ycomo te han dicho, tendrás que instalar el server de IB o FB.
Si quieres utilizar la versión embebded, no tendrás que instalar el Server, pero tendrás que distribuir determinados ficheros en el directorio de la aplicación.

Una vez que tengas claro lo que tienes que instalar, finalmente puedes realizar un instalador (si es necesario) que te lo haga todo. Pero eso ya sería opcional y como paso final cuando tengas claro lo que hay que instalar.

Espartaco 27-10-2015 11:08:55

Grascias Neftali, tengo que instalar el server aunque mi base de datos sea local?

He probado tambien con FB embebed pero algo habre hecho mal porque me ha dado el mismo fallo. Aunque prefiero seguir ya con InterBase que esta avanzada la aplicacion.

LLevo mas de quince años con base de datos planas y nunca he tenido problemas, desde Dbase IV hasta hoy, pasando por Clipper,y Delphi, pero la verdad quiero cambiarme ya porque no paro de leer las ventajas que tienen IB y FB.

Bueno voy a intentar instalar el server de interbase en el cliente, si es que viene por separado en el disco de Delphi poruq embarcadero me mando un archivo de instalación y ya esta, aunque he descargado una ISO desde su pagina. A ver que pasa y os comento.

Y gracias por vuestra ayuda, como siempre.

Neftali [Germán.Estévez] 27-10-2015 12:40:30

Antes de nada, comentar que para todas estas pruebas, los desarrolladores tenemos como gran herramienta de apoyo la virtualización.
Es ideal, realizar todo esto en una máquina virtual (que emula la de un cliente) para no encontrarlos sorpresas a la hora de la instalación definitiva.

Hay muchas cosas que funcionan en nuestros equipos de desarrollo y que luego no funcionan en los equipos de los clientes. Ya sea por librerías, componentes, BPL's, SGBD's, Servidores COM,... que nosotros tenemos funcionando por que tenemos instalado en entorno de desarrollo y que los clientes no tienen.

Cita:

Empezado por Espartaco (Mensaje 498417)
Grascias Neftali, tengo que instalar el server aunque mi base de datos sea local?

Correcto. Interbase y Firebird, son SGBD's, a diferencia de las Bases de Datos de escritorio como MDB (Access), DBF, DB,...
Por ello necesitan que esté funcionando un servidor para funcionar. Ya sea en el equipo local o en otro equipo de la red.
Por lo tanto hay que instalar el servidor siempre.
En el caso de que estés utilizando la versión embebded, en lugar de instalar el servidor, sustituimos esa instalación por la copia de Varios ficheros en el directorio de la aplicación (pero esta versión sólo servirá para monopuesto).

Cita:

Empezado por Espartaco (Mensaje 498417)
LLevo mas de quince años con base de datos planas y nunca he tenido problemas, desde Dbase IV hasta hoy, pasando por Clipper,y Delphi, pero la verdad quiero cambiarme ya porque no paro de leer las ventajas que tienen IB y FB.

Tienen ventajas, pero tamvbién se complica un poco la instalación y la administración.

Espartaco 27-10-2015 13:02:57

Gracias de nuevo Neftali. En efecto yo uso maquinas virtuales y para la prueba final una independiente.

Voy a intentar como te dije en el mensaje anterior instalar el servidor de InterBase. De todas formas esto va a ser una aplicacion monopuesto, y como he dicho he intentado con firebird embed y tampoco lo he conseguido.

Intento lo de interbase y te comento.

Neftali [Germán.Estévez] 27-10-2015 14:23:24

Cita:

Empezado por Espartaco (Mensaje 498420)
De todas formas esto va a ser una aplicacion monopuesto, y como he dicho he intentado con firebird embed y tampoco lo he conseguido.

Si una vez que te funcione quieres hacer la prueba con FB embebded, debería bastar con descargar las librerías y copiarlas al directorio donde está el EXE.
Desactivas los servicios de Interbase, para asegurarte de que funciona el FB y creo recordar que en la configuración de la Base de Datos dejas el SERVER como "vacío".
Si los componentes que estás usando son de Interbase, renombras la librería fbEmbebd.dll que has descargado a GDS32.dll.

Con eso creo que debería bastar.

Espartaco 28-10-2015 14:10:26

Muchas gracias Neftali, en cuanto pueda hare la prueba y te comento. El proyecto actual lo voy a hacer con Delphi5 y Paradox porque me corre mucha prisa. Muchas gracias por tu ayuda y la de Casimiro.

Un saludo.


La franja horaria es GMT +2. Ahora son las 07:13: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