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)
-   -   Error conexión con el servidor (https://www.clubdelphi.com/foros/showthread.php?t=87852)

Catublipas 09-03-2015 11:17:30

Error conexión con el servidor
 
Buenas a todos,
He terminado una aplicación y funciona a la perfección en mi ordenador pero,
estoy intentando instalar la aplicación en otro ordenador, todos los ordenadores tienen instalado interbase 7.0, y utilizan otra aplicación que se conecta con nuestro servidor y acceden a la BBDD sin problema.
La aplicación se conecta con la base de datos en alojada en el servidor para hacer las consultas. Ya tuve un problema al desarrollar esa conexión ya que parecia que el servidor me rechazaba la conexión. Para ello instale el complemento fibplus para Delphi xe 6 y desde mi ordenador corre perfecto. Ahora bien lo instalo en otro pc (he creado un instalador con Inno Setup y he incorporado el Midas.dll para no tener problemas con el clientdataset). Pero me salta un problema para conectar con el servidor, probablemente sea una tontería de algún complemento que tenga que ir en el instalable, pero no se que debo hacer.Pero cuando intenta acceder al servidor para hacer las consultas me salta este error:

Código:

Unable to complete request to host "172.16.1.100". Failed to locate host machine.
Undefined service 3050 /tcp

¿Qué me puede faltar? Si necesitais algo más de información solo tienes que decirlo. Muchas gracias de antemano. Y gracias de nuevo por ayudarme a superar los problemas para desarrollar la aplicación.

Un saludo!

Casimiro Notevi 09-03-2015 11:25:34

¿Has instalado interbase local en ese ordenador?

Catublipas 09-03-2015 11:35:02

Buena pregunta, yo no he instalado nada, ya que este ordenador tenía instalada otra aplicación que conecta con la misma base de datos y no tiene problema alguno para conectar con el servidor. Por eso pensé que no necesitaría nada más. ¿Cómo puedo saber si está instalado?

Casimiro Notevi 09-03-2015 11:40:39

Si otro programa conecta al mismo servidor y a la misma base de datos, entonces es que está instalado y funciona bien.

El mensaje de error es como si no estuviese conectado. ¿Puede ser que busques fbclient.dll en lugar de gds32.dll?
¿Tienes instalado la misma versión de interbase en ambos equipos?
¿Usas por defecto el puerto 3050?

Catublipas 09-03-2015 11:49:15

Si, es la misma versión, Interbase 7.0.
También uso el puerto 3050 para conectar con la base de datos.

Casimiro Notevi 09-03-2015 12:48:55

Como no des más pistas.
¿Es correcta la IP 172.16.1.100?

Catublipas 09-03-2015 13:19:56

La IP está clavada, porque en el mío funciona perfectamente no solo desde delphi, sino instalandola también.
Te comento los pasos que he seguido en un ejemplo resumido a ver si damos con la tecla.
Imaginemos una aplicación más sencilla, que simplemente accede a una base de datos donde checkea nombre y nos muestra un listado de personas con ese nombre.
Para ello creo un formulario con una IBDataBase con la conexión al servidor 172.16.1.100/3050:E\basededatos.gdb, la testeo y conecta perfectamente.
Creo el IBTransactiony la linko con la IBDataBase. Creo la consulta y lo enlazo con el clientdataset.
Todo esto funciona perfecto, por lo tanto compilo el proyecto. Creo un instalador con Inno Setup, incluyendo el midas.dll.
Lo instalo en el mismo ordenador que lo he creado, me crea la carpeta donde esta el .exe, me incorpora el midas.dll, uninstall.dat y uninstall.exe.
Arranco la aplicación y perfecto hago la consulta, conecta con el servidor y me devuelve la consulta.
Este mismo setup lo instalo en otro PC, me crea los mismo archivos, ejecuto el programa, arranca perfecto, pero voy a hacer la consulta y me salta el error:

Código:

Unable to complete request to host "172.16.1.100". Failed to locate host machine.
Undefined service 3050 /tcp

.

Hay algo que me he saltado incorporar y no se que es.

Casimiro Notevi 09-03-2015 13:44:43

Entonces, repito: ¿tiene instalado interbase cliente ese equipo?
¿La unidad "E" es física o "virtual"?

La ruta debe ser física del servidor, ejemplo: 192.168.1.100:C:\basedatos.gdb

El puerto puedes no ponerlo porque es el 3050, predeterminado.

Catublipas 09-03-2015 14:10:50

La ruta es la física del servidor, ese fue un problema que ya solucioné que también tuve hace unos días jajaja.
E Interbase 7.0 está instalado, ya que entro en programas y características y me aparece. Pero ya me pones en duda a ver si yo tengo una versión distinta, ya que cuando empecé con este proyecto, yo sabía muy poquito sobre Delphi e Interbase. E instalé Firebird 2.5 aunque luego la desinstalé. No sé, ando algo perdido, y más porque no puedo tocar nada de lo que ya está establecido. No puedo cambiar nada con respecto al servidor. Y la empresa que lo montó no da soporte y yo no estuve.
¿Hay algunas pautas que pueda seguir para darte más información?

Muchas gracias de nuevo!

Casimiro Notevi 09-03-2015 14:14:34

Pues tendrás que asegurarte de que está instalado interbase 7.
Y quitar firebird, si no te sirve.

Catublipas 09-03-2015 14:33:54

Interbase 7.0 esta instalado en Programas (x86)\Borland en los dos PCs. Antes de instalar el complemento FIBPlus, yo no podía acceder desde delphi a la base de datos del servidor(Sí con una copia en local pero no a través de la conexión que he mostrado antes). ¿Puede ser que tenga algo que ver? ¿A lo mejor tengo que incorporar algo de este complemento?

Casimiro Notevi 09-03-2015 14:39:25

Vale, está instalado, pero ¿está funcionando?

Los componentes de acceso a datos FIBplus, si están configurados correctamente, conectarán siempre, no en un equipo, sí, y en otro, no.

Catublipas 09-03-2015 14:51:39

En principio, si corre la otra aplicación que conecta a la misma bbdd debería estar en funcionamiento no? pero si me dices como lo puedo comprobar te lo digo.
Porque no le veo manager. En mi PC si que tengo el Interbase Manager, pero en el otro no. Perdona mi ignorancia. Espero no desesperarte mucho. La clave está en, ¿qué hay de más en mi PC donde tengo instalado Delphi que no tenga el otro al instalarle la aplicación?

Casimiro Notevi 09-03-2015 14:56:44

Cita:

Empezado por Catublipas (Mensaje 489753)
En principio, si corre la otra aplicación que conecta a la misma bbdd debería estar en funcionamiento no?

Entonces debe funcionar :confused:

Catublipas 09-03-2015 15:01:30

¿Puede ser que sea el mismo FIBPlus? Lo que tengo instalado es una versión Demo. Pero bueno como tu dices no puede funcionar bien en uno y mal en otro.
Así estoy yo jajaja, que no se porque no va :S.

Casimiro Notevi 09-03-2015 15:18:39

antivirus, firewall, etc. ¿lo has mirado?
Puede que el otro programa tenga permiso para acceder.

Catublipas 09-03-2015 15:25:14

Sí, ya probé deshabilitandolo temporalmente tanto antivirus como firewall, añadiendolo a excepciones pero nada. Sigue sin funcionar :(.

Casimiro Notevi 09-03-2015 20:55:36

Haz un programita con un simple botón que conecte a la base de datos, para probar y verificar que no es problema de tu programa.

Catublipas 10-03-2015 08:47:31

Hecho, y tengo el mismo problema. He usado un IBDatabase, IBTransaction, IBQuery, un DataSource y un Grid. Para hacer una consulta sencilla.
Y me da el mismo problema. ¿No creo que sea ninguno de los componentes no?
Es que no entiendo que tiene de más mi PC que no tenga el otro. No se me ocurre nada. ¿Hay alguna otra solución?

Casimiro Notevi 10-03-2015 09:19:08

Cita:

Empezado por Catublipas (Mensaje 489784)
Es que no entiendo que tiene de más mi PC que no tenga el otro. No se me ocurre nada.

Eso es precisamente lo que no podemos ver nosotros desde aquí.
Aparentemente el servidor no te deja conectar, ¿el motivo?, podría seguir dando palos de ciego, pero sin poder "tocarlo"... dependemos de ti y tus comentarios.


La franja horaria es GMT +2. Ahora son las 10:18:04.

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