Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 31-08-2004
aerosB4 aerosB4 is offline
Registrado
 
Registrado: mar 2004
Ubicación: México
Posts: 7
Poder: 0
aerosB4 Va por buen camino
Question Error de conexión con Interbase

Hola a todos:

Me encuentro haciendo una aplicación que se conecta con una base de datos de Interbase 6, la se encuentra en un servidor.

Pasa lo siguiente, cuando me conecto por primera vez, hace el proceso de la aplicación de manera normal, sin problemas, pero cuando trato de conectarme por segunda vez, me retorna el siguiente mensaje:

Cannot create shared resource (Windows error 5)

Cada que se corre el proceso, se crean los objetos necesarios, y cuando termina, se destruyen.

¿Podrían por favor ayudarme a resolver este problema?

Les agradezco mucho de antemano su ayuda.

Saludos!
Responder Con Cita
  #2  
Antiguo 02-09-2004
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Poder: 24
guillotmarc Va por buen camino
Hola.

Esto me parece muy raro. Deberias darnos más explicaciones. ¿ La conexión la realizas desde la misma máquina en que reside la base de datos, o desde otro ordenador ?, ¿ Que Sistemas Operativos están involucrados ? ¿ Que componentes utilizas para conectar desde Delphi a Interbase ? ¿ Que cadena de conexión utilizas ?
¿ Cuando corre el proceso, que objetos necesarios dices que se crean ?

NOTA: Si utilizas Interbase 6 Open Edition, te recomiendo que te pases a Firebird. También es Open Source (gratuito) y tienes muchos bugs corregidos así como bastantes mejoras.

Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).
Responder Con Cita
  #3  
Antiguo 02-09-2004
aerosB4 aerosB4 is offline
Registrado
 
Registrado: mar 2004
Ubicación: México
Posts: 7
Poder: 0
aerosB4 Va por buen camino
Smile

Hola Marc:

Antes que nada muchas gracias por responder, te explico el proceso con detalle a continuación:

Tengo una aplicación(ésta corre en diferentes sistemas operativos) que transmite información a un servidor remoto. Esta aplicación se enlaza via web a un un servidor intermedio, el cual posee como sistema operativo Windows 2000 Advanced Server. En este servidor se depositará la información tranmitida. Dicha información son archivos de distintos tipos.

Dentro de este servidor se encuentra la dll en cuestión, los componentes que utiliza son IBX. Aquí el detalle está en que la base de datos de Interbase 6 se encuentra en otro servidor, así que la dll conecta a la base de datos para extraer los datos necesarios para llevar a cabo el depósito de información en el servidor intermedio. Los componentes utilizados son TIBDatabase, TIBQuery y TIBStoredProc, los cuales se crean dinámicamente y se destruyen en cuanto la dll es liberada.

El sistema operativo del servidor donde está la base de datos es Windows 2000 Server.

Cabe señalar que la aplicación realiza varios procesos de transmisión de información en cada ejecución. La dll se inicia y se libera por cada petición.

Después que se tienen los datos, se deposita la información y se actualiza el espacio en el disco duro del servidor intermedio. Debido a que la información del espacio también se guarda en la base de datos, entonces la dll también efectua dicha actualización y al final se envía un correo electrónico de éxito.

Espero que esta información ayude.

Les mando muchos saludos y nuevamente gracias!
Responder Con Cita
  #4  
Antiguo 02-09-2004
Avatar de guillotmarc
guillotmarc guillotmarc is offline
Miembro
 
Registrado: may 2003
Ubicación: Huelva
Posts: 2.638
Poder: 24
guillotmarc Va por buen camino
Hola.

Vistos todos los procesos que realizas, no creo que tu error tenga que ver con Interbase, nunca he visto u oído de ningún error de Interbase con ese mensaje. Te recomiendo que depures la dll para verificar que todos los demás procesos se ejecutan correctamente, seria muy útil saber que código tiene exactamente la línea que hace saltar el error.

Saludos.
__________________
Marc Guillot (Hi ha 10 tipus de persones, els que saben binari i els que no).
Responder Con Cita
  #5  
Antiguo 04-09-2004
aerosB4 aerosB4 is offline
Registrado
 
Registrado: mar 2004
Ubicación: México
Posts: 7
Poder: 0
aerosB4 Va por buen camino
Smile

Hola:

Al parecer ya se resolvió el problema, se debío a varios elementos involucrados, uno de ellos es que en el mismo servidor se hacían peticiones de otro tipo, lo cual alentaba en cierta manera el proceso y eso nos hacía que no detectaramos exactamente en que línea de código ocurría el error.

Otro factor es que se tenían el programa cliente y programa servidor en el equipo que contenía a la base de datos(Aunque no estoy muy seguro si esto era factor para el error)

Por último, lo que hice para resolver el problema fue definir la ip del servidor que contiene la base de datos en el archivo HOSTS de Windows, y al ponerle al componente IBX de base de datos le pasamos la dicha declaración, junto con la ruta fisica de la base, en su propiedad Database.

Espero que este consejo les sirva a otros miembros que se encuentren una situación similar.

Sin más por ahora, me despido de ustedes.

Muchas gracias por el tiempo invertido en este problema y por su ayuda.
Responder Con Cita
  #6  
Antiguo 04-10-2004
aerosB4 aerosB4 is offline
Registrado
 
Registrado: mar 2004
Ubicación: México
Posts: 7
Poder: 0
aerosB4 Va por buen camino
Thumbs up Actualización

Hola a todos:

Les actualizo la información de este hilo.

Después de hacer varias pruebas simultáneas parqa la resolución de este problema, nos dimos cuenta que no funcionaba completamente el declarar en hosts el servidor de la base de datos, ya que en ocasiones seguía marcando el error de "Recurso Compartido".

El error se debió a que un servicio NT que hacía uso de la dll en cuestión no la liberaba, por lo que se quedaba cargada y al momento de querer volver a utilizar una de sus funciones, marcaba el error.

Posteriormente se actualizó el servicio y el error dejó de aparecer.

Espero que esta información les sea de utilidad.

Saludos y gracias de nueva cuenta!
Responder Con Cita
Respuesta



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


La franja horaria es GMT +2. Ahora son las 14:09:28.


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