Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Principal > Varios
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Grupo de Teaming del ClubDelphi

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 16-03-2010
mcs mcs is offline
Miembro
 
Registrado: may 2007
Ubicación: Girona
Posts: 229
Poder: 18
mcs Va por buen camino
Algun sistema para encontrar el orígen del error?

Buenos días,

Estoy finalizando un proyecto, y haciendo pruebas en un ordenador "virgen" (sin entorno de desarrollo Delphi).

Los distintos componentes del proyecto (una aplicación de escritorio, un servicio y una aplicación de "tray-icon") funcionan perfectamente (o casi) en la máquina de desarrollo. Pero en el ordenador de pruebas, ná de ná.

El caso es que me preguntaba si existe alguna forma de encontrar el orígen de estos errores. Por ejemplo, sé que si falta algún componente (BPL) o librería (DLL), la aplicación no arranca y dice qué le falta. Pero claro, cuando suelta la típica ventanita de "Esta aplicación ha provocado un error en Kernel32.dll y tal y cual", ya es más complicado...

Alguna idea/sugerencia? Que hacéis vosotros, cuando os encontrais en una situación similar?

Gracias,

Marc
Responder Con Cita
  #2  
Antiguo 16-03-2010
mcs mcs is offline
Miembro
 
Registrado: may 2007
Ubicación: Girona
Posts: 229
Poder: 18
mcs Va por buen camino
Me auto-respondo...

Las bases de datos, las malditas bases de datos conectadas en tiempo de diseño... Y cuando se compilan en la versión definitiva se dejan conectadas, con rutas incorrectas y todo falla...

La solución? Poner a false el atributo Active de todos los TIBCConnection...

Saludos,

Marc
Responder Con Cita
  #3  
Antiguo 16-03-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.059
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por mcs Ver Mensaje
[..]Alguna idea/sugerencia? Que hacéis vosotros, cuando os encontrais en una situación similar?
Gracias, Marc
Maldecir al ordenador


También puedes capturar los errores desde código y poner mensajes según va cargando cada form para encontrar al culpable. Luego seguir paso a paso el código para ver qué hace y si no encuentras pistas... instalar el delphi en ese ordenador
Responder Con Cita
  #4  
Antiguo 16-03-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.059
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por mcs Ver Mensaje
Me auto-respondo...
Las bases de datos, las malditas bases de datos conectadas en tiempo de diseño... Y cuando se compilan en la versión definitiva se dejan conectadas, con rutas incorrectas y todo falla...
La solución? Poner a false el atributo Active de todos los TIBCConnection...
Saludos,
Marc
En mi trabajo tenemos una pizarra de esas que pegas notas con chinchetas y en ella una lista de cosas a comprobar antes de compilar. Una de las cosas que pone es "- Comprobar que las bases de datos están cerradas"

Al igual que los pilotos de avión deben hacer por obligación una serie de rutinas aburridas y pesadas antes de iniciar el vuelo... nosotros debemos verificar también una serie de pasos antes de compilar
Responder Con Cita
  #5  
Antiguo 16-03-2010
Avatar de MAXIUM
MAXIUM MAXIUM is offline
Miembro
 
Registrado: may 2005
Posts: 1.490
Poder: 21
MAXIUM Va camino a la fama
http://delphiallimite.blogspot.com/2...eurekalog.html
Responder Con Cita
  #6  
Antiguo 16-03-2010
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 30
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Como que ya hacen falta en la VCL propiedades StoreConnected / StoreActive para todos los componentes de acceso a datos.
Responder Con Cita
  #7  
Antiguo 16-03-2010
Avatar de look
look look is offline
Miembro
 
Registrado: sep 2007
Ubicación: The Shire
Posts: 656
Poder: 17
look Va camino a la fama
Cita:
Empezado por Casimiro Notevi Ver Mensaje
En mi trabajo tenemos una pizarra de esas que pegas notas con chinchetas y en ella una lista de cosas a comprobar antes de compilar. Una de las cosas que pone es "- Comprobar que las bases de datos están cerradas"

Al igual que los pilotos de avión deben hacer por obligación una serie de rutinas aburridas y pesadas antes de iniciar el vuelo... nosotros debemos verificar también una serie de pasos antes de compilar
Me ha llamado la atencion lo de los pasos antes de compilar, me llena de mucha curiosidad, yo soy muy novato en esto, compañero seria bueno si pones unos cuantos de esos pasos que comentas, lo agradeceria mucho
saludos.
__________________
all your base are belong to us
Responder Con Cita
  #8  
Antiguo 16-03-2010
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
¿Me puede alguien explicar el origen de este problema? No entiendo qué relación hay entre dejar abierta la conexión al compilar y el que las rutas no sean las correctas.

// Saludos
Responder Con Cita
  #9  
Antiguo 16-03-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.059
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Te lo puedo decir mañana, ahora no estoy en el trabajo, pero son cosas como:
- comprobar que el proyecto se compila con paquetes externos
- comprobar que las bases de datos están cerradas
- no olvidar la .dll del compresor zip
- generar plantillas de bases de datos nuevas (por si lleva cambios)
- anotar versión/revisión en acerca de...

y de memoria no recuerdo más
Responder Con Cita
  #10  
Antiguo 16-03-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.059
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por roman Ver Mensaje
¿Me puede alguien explicar el origen de este problema? No entiendo qué relación hay entre dejar abierta la conexión al compilar y el que las rutas no sean las correctas.

// Saludos
Si tienes un componente basedatos con una base de datos de prueba para programar y la propiedad databasename:=/mnt/datos/mibdpruebas.fdb (por ejemplo) y dejas la propiedad active=true, cuando te llevas el ejecutable a otro ordenador, si no existe esa base de datos en la misma ruta donde estaba en tu ordenador... ¡error!

Debes poner el active=false.

El truco cuando ya está en el cliente y mientras lo solucionas compilando de nuevo es crear esa misma ruta en el equipo del cliente y meter allí cualquier base de datos con el mismo nombre.
Responder Con Cita
  #11  
Antiguo 16-03-2010
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Si tienes un componente basedatos con una base de datos de prueba para programar y la propiedad databasename:=/mnt/datos/mibdpruebas.fdb y dejas la propiedad active=true, cuando te llevas el ejecutable a otro ordenador, si no existe esa base de datos en la misma ruta donde estaba en tu ordenador... ¡error!

Debes poner el active=false.
Y, ¿cuando ponga el Active := true en ejecución, se cambia solita la ruta?

// Saludos
Responder Con Cita
  #12  
Antiguo 16-03-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.059
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Creo recordar que alguien hizo unos componentes que solucionaban este problema, ¿puede ser Al González?.
El caso es que FIBplus creo que lo implementó desde hace algún tiempo, pero que yo sepa sigue ese problema en las IBX

Última edición por Casimiro Notevi fecha: 16-03-2010 a las 19:32:38.
Responder Con Cita
  #13  
Antiguo 16-03-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.059
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por roman Ver Mensaje
Y, ¿cuando ponga el Active := true en ejecución, se cambia solita la ruta?

// Saludos

Se supone que en la propiedad databasename habrás puesto una correcta al arrancar el programa (y antes lo pondrás a 'false'). Luego ya depende de cada uno, si lees la ruta en un .ini o como sea. Pero el caso es que los IBX tienen (o tenían, no sé ahora) ese fallo.
Responder Con Cita
  #14  
Antiguo 16-03-2010
Avatar de look
look look is offline
Miembro
 
Registrado: sep 2007
Ubicación: The Shire
Posts: 656
Poder: 17
look Va camino a la fama
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Te lo puedo decir mañana, ahora no estoy en el trabajo, pero son cosas como:
- comprobar que el proyecto se compila con paquetes externos
- comprobar que las bases de datos están cerradas
- no olvidar la .dll del compresor zip
- generar plantillas de bases de datos nuevas (por si lleva cambios)
- anotar versión/revisión en acerca de...

y de memoria no recuerdo más
gracias compañero.... saludos
__________________
all your base are belong to us
Responder Con Cita
  #15  
Antiguo 16-03-2010
Avatar de AzidRain
[AzidRain] AzidRain is offline
Miembro Premium
 
Registrado: sep 2005
Ubicación: Córdoba, Veracruz, México
Posts: 2.914
Poder: 21
AzidRain Va camino a la fama
Las Zeos en su componente TZConnection tiene una propiedad booleana "Design Connection" que al ponerla a TRUE, hace el trabajo de no conectar la base de datos aunque accidentalmente la hayamos dejado activa en tiempo de diseño.
__________________
AKA "El animalito" ||Cordobés a mucha honra||
Responder Con Cita
  #16  
Antiguo 16-03-2010
Avatar de roman
roman roman is offline
Moderador
 
Registrado: may 2003
Ubicación: Ciudad de México
Posts: 20.269
Poder: 10
roman Es un diamante en brutoroman Es un diamante en brutoroman Es un diamante en bruto
También MyDac cuenta con algo similar; la opción KeepDesignConnected.

// Saludos
Responder Con Cita
  #17  
Antiguo 16-03-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.059
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
La FIBplus tiene:

Código:
+ DesignDBOptions
 |_ ddoIsDefaultDatabase 
 |_ ddoStoreConnected     
 |_ ddoNotSavePassword
todas boolean
Responder Con Cita
  #18  
Antiguo 16-03-2010
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 30
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Creo recordar que alguien hizo unos componentes que solucionaban este problema, ¿puede ser Al González?
Sí, con las propiedades StoreConnected y StoreActive.

Cita:
Empezado por Casimiro Notevi Ver Mensaje
que yo sepa sigue ese problema en las IBX
No del todo. El componente nativo TIBDatabase ofrece la propiedad AllowStreamedConnected, aunque su funcionamiento es diferente al que yo implementé.

Saludos.

Al González.

Última edición por Al González fecha: 17-03-2010 a las 21:19:31.
Responder Con Cita
  #19  
Antiguo 17-03-2010
Avatar de Lepe
[Lepe] Lepe is offline
Miembro Premium
 
Registrado: may 2003
Posts: 7.424
Poder: 29
Lepe Va por buen camino
hasta cnpacks tiene esa opción, pones una regla que la propiedad Active sea False para los TIBDatabase y te olvidas del tema.
__________________
Si usted entendió mi comentario, contácteme y gustosamente,
se lo volveré a explicar hasta que no lo entienda, Gracias.
Responder Con Cita
  #20  
Antiguo 17-03-2010
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.059
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Cita:
Empezado por Lepe Ver Mensaje
hasta cnpacks tiene esa opción, pones una regla que la propiedad Active sea False para los TIBDatabase y te olvidas del tema.
Si está active=true, cuando se va a compilar lo pone a false ?

Lepe, ¿dónde están esas reglas?, es que no las encuentro
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

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Error: No se puede encontrar la fila para su actualizacion ludan508 Conexión con bases de datos 0 16-04-2007 22:12:29
Pregunta algun sistema de versionado (CVS) mcalmanovici Varios 2 02-10-2006 23:51:20
Como saber el origen de este error.. n3mohack Varios 2 10-02-2006 21:05:28
algún sistema de informes que se pueda modificar en runtime? Er_Manué Impresión 4 07-10-2005 11:22:21
Error al encontrar registro. alfredosg19 Conexión con bases de datos 1 04-07-2005 17:25:59


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