Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   coneccion de base de datos , rara... (https://www.clubdelphi.com/foros/showthread.php?t=76210)

Chaja 16-10-2011 17:39:13

coneccion de base de datos , rara...
 
Hola.
el motivo es de que tengo una aplicacion, la cual esta echa en D2007 e interbase. Uso los comp. dbx y hasta ahora no he tenido problemas, pero en las ultimas re complicaciones me pasa esto. Tengo la base de datos y la aplicacion instalada en una maquina w xp, si en la maquina server no se inicia la aplicacion, los clientes de la red no puede iniciar la apliacion, si se ejecuta en el servidor si anada en las terminales, pero no se por que..... no se que se cambio que me hace esto... alguna sugerencia??


Luis
Gracias

Casimiro Notevi 16-10-2011 21:13:00

Creo que no se entiende bien lo que preguntas.

Chaja 17-10-2011 00:02:42

ok.... reformulo...
tengo mi sistema el cual esta escrito con delphi 2007 , uso comp. de coneccion SQLConnection, y base de datos interbase.
Como estoy siempre actualizando el sistema, voy haciendo arreglos y agregados , compilo y lo llevo a los clientes los cuales los tengo abonados. Bien, hasta hace una semana atras, el nuevo exe lo ejecutaba y listo salia andando. ahora en una disposicion en red, donde el aplicativo esta en el servidor , junto con la BD (interbase 7.5), si no se esta ejecutando el sistema en el servidor , las maquina clientes no pueden ejecutar el sistema. Da un error como de conexion. pero si voy al servidor y ejecuto la aplicacion, las maquinas clientes pueden funcionar normalmente, estas ejecuta en exe del servidor. se me entendio???
Gracias

Luis

Casimiro Notevi 17-10-2011 00:52:01

Creo que ahora se entiende, en un equipo "servidor" está la base de datos y el programa. Desde los otros equipos tienen un acceso directo al programa que está en el servidor.
Quiere decir que el programa se ejecuta en el servidor tantas veces como sea llamado por las máquinas clientes.

Cita:

Empezado por Chaja (Mensaje 415774)
Da un error como de conexion

¿Y cómo es ese error?

.

Chaja 17-10-2011 03:42:08

bien..... yo cuando levanto el prog. leo desde un archivo .ini, el path de coneccion a la BD, cuando inicia el prog el SQLConnection esta en su propiedad de connected=False, entonces inicia el prog, en el create del form , leo el archivo ini, donde esta la configuracion del path de la BD, se lo asigno, y hago connected:=true. esto esta en un try except, y cuando hay un error de coneccion, muestro un mesja diciendo que hay un problema de coneccion y cierro la aplicacion. Bien esto sucede en los clientes el path lo pongo como \\servidor\gestion\tablas ib\gestionv3.lar. el mism path se lee ya sea en el servidor o los clientes. el path es correcto, pues cuando ejecuto el sis en el servidor, esta inicia sin problemas pues lleago a la pantalla del login del sistema, no sale el error de coneccion pero en los clientes no.
Bien si inicio el sis. en el servidor, los cllientes inician la aplicacion sin dar error. pero debe estar iniciado el sist. en el servidor. la pc que hace de servidor tiene un w xp .

se comprendio???

Luis

Casimiro Notevi 17-10-2011 09:44:08

¿Has probado a capturar el error en el try except?, ahí sabrás exactamente el mensaje de error. O quita el try except para verlo y luego de probar y resolver el problema ya vuelves a ponerlo.

jachguate 19-10-2011 18:52:01

Además de lo ya dicho por Casimiro...

Cita:

Empezado por Chaja (Mensaje 415780)
el path lo pongo como \\servidor\gestion\tablas ib\gestionv3.lar.

Esto... no se, no me hace sentido... porque da la impresión que ejecutas el servidor de interbase en cada uno de los clientes. Usualmente la "cadena de conexión", si la comunicación es via TCP/IP tendría que ser de la forma:

Código:

nombre_o_ip_del_servidor:ruta_local_en_el_servidor
Algunos ejemplos:

Código:

servidor:c:\users\public\application data\tu empresa\gestionv3.lar
192.168.14.7:c:\gestion\tablas ib\gestionv3.lar
dbserver.ejemplo.com:/var/data/gestionv3.lar

Etc.

Hay más información en el artículo Trabajando con bases de datos:strings de conexión. La información es sobre Firebird, pero supongo que lo dicho allí es aplicable también a Interbase.

Un saludo.

Chaja 30-10-2011 03:13:48

coneccion de base de datos , rara..II Continua
 
Hola: no se si se acuerdan pero habia pasado un error con este problema, perdon casimiro si repito el titulo, pero no sabia como informarlo. en este enlace esta el hilo que inicie.
http://www.clubdelphi.com/foros/showthread.php?t=76210

Bien puse un try, en el momento que quiere hacer coneccion y el error es este

IDBXError; Connection rejected by remote interface...

alguna idea?

recuerdo que si habro la aplicacion en el servidor esto no sucede...

Gracias

Luis Roldan
Mar del Plata
Argentina

Casimiro Notevi 30-10-2011 09:34:08

Hola, ya que es la continuación del otro hilo, entonces los he unido, no creo que valga la pena crear uno nuevo, es mejor seguirlo, así queda más claro.

Ese mensaje indica que no puede conectar, ¿has comprobado firewall?, ¿puerto correspondiente abierto?, ¿funciona localmente en el servidor?, sí, pues entonces debe ser lo anterior, firewall, antivirus, etc.
Es que no podemos ayudar mucho porque no tenemos información.

Chaja 30-10-2011 19:47:09

hola casimiro.... bien.... el Firewal esta desactivado.... auque si fuese este el problema por que cuando abro la aplicacion en el servidor no me hace el error?. Despues que inicio la aplicacion en el servidor los clientes puede iniciar.... por eso no me cuadra. antivirus tiene el de MS ....
En otras compliaciones nunca me paso, es decir lo unico que hice , hacer una arreglo, compilo y pise el nuevo .exe y las configuraciones de windows no habian cambiado y paso esto.
el TSLconnection tiene alguna propiedad que me limite esto???
yo no supe encontrarla.
gracias

Luis Roldan
Mar del Plata
Argentina

Casimiro Notevi 30-10-2011 19:56:35

Cita:

Empezado por Chaja (Mensaje 417100)
Despues que inicio la aplicacion en el servidor los clientes puede iniciar.

¿Entonces puede ser alguna utilidad/servicio/dll, etc. que se encargue la aplicación de activar y por eso no funciona hasta que la inicias?

Chaja 31-10-2011 01:07:09

pude ser la dbxint30.dll que debe estar en todas las maquinas?, o el midas) el midas lo puse en el uses del form principal, y l dbxint30.dll esta en el dir de la maquina que hace de servidor, y es compartido por todos.

Casimiro Notevi 31-10-2011 09:47:27

Puede ser, pero no lo puedo asegurar, porque ¿desde el programa tienes puesta alguna ruta para encontrar las dll?


La franja horaria es GMT +2. Ahora son las 10:17:40.

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