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 15-08-2013
erickperez6 erickperez6 is offline
Miembro
 
Registrado: may 2003
Posts: 152
Poder: 21
erickperez6 Va por buen camino
aplicacion inestable en delphi7

Saludos,

No se que titulo ponerle al tema, asi que por la "inestabilidad" y el comportamiento extraño que tiene mi aplicacion sin conocer la causa real me llevo a este titulo.

Sucede que tengo una aplicacion muy grande con algunas 250 formas y algunos 5 componentes de terceros (rusas, raize, cnpack, fibplus y fastreport), desde hace un tiempo hasta el dia de hoy, cuando compilo la aplicacion para generar mi nuevo ejecutable se me esta presentando un comportamiento extraño en el sistema, errores que no le encuentro explicacion, solo se me ocurre que es un problema con el IDE de delphi 7 o algun bug de los componentes de tercero, por ejemplo:

Se me presenta un EAccessviolation abriendo algunas formas o al momento de cerrar la aplicacion. Como sabemos este error comunmente sucede cuando intentamos de acceder a un objeto que no esta creado o al tratar de destruir un objeto que ya no existe, pero nada de esto esta sucediendo, a veces compilo la aplicacion varias veces y uno de los ejecutable que me genera delphi no me da los errores pero los demas si. Por lo general tengo que generar el proyecto completo por el menu Project - Build MiSistema o de otro modo el ejecutable siempre estara lleno de los EAccessviolation, pero no siempre esta medicina me funciona ya que ultimamente no se estan desapareciendo los EAccessviolation por mas que genere el proyecto, incluso hasta para cerrar el IDE de delphi en algunas ocasiones, no lo puedo hacer porque me presenta un EAccessviolation para cerrarlo, y tengo que matar el proceso para cerrar la ventana de delphi

Encima del problema anterior, existe una funcion que utilizo mucho en casi todas las formas, en la cual le paso un string como parametro, resulta que en algunos formularios la primera vez que invoco la funcion, el valor del string aparece truncado, es decir, no es el mismo que le envio, en el segundo intento si toma el valor que le estoy pasando, por ejemplo:

a := mifuncion('hola');

la funcion no recibe el string 'hola', sino caracteres desconocidos '@#$@#$^', en el segundo intento si toma el valor correcto.

No se a que se debe esta inestabilidad de la aplicacion, tengo dos computadores con el mismo ambiente instalado, y los dos hacen lo mismo. Antes cuando la aplicacion era un poco mas pequeña no sucedian estos errores, pero con el tiempo han comenzado aparecer, al principio lo solucionaba pero ahora la solucion aplicada no siempre me da resultados. Que me pueden sugerir que pruebe?
Responder Con Cita
  #2  
Antiguo 15-08-2013
Avatar de donald shimoda
donald shimoda donald shimoda is offline
Miembro
 
Registrado: jul 2008
Ubicación: Argentino en Santa Cruz de la Sierra
Posts: 1.083
Poder: 17
donald shimoda Va por buen camino
Cita:
Empezado por erickperez6 Ver Mensaje
Saludos,

No se que titulo ponerle al tema, asi que por la "inestabilidad" y el comportamiento extraño que tiene mi aplicacion sin conocer la causa real me llevo a este titulo.
Por todo lo que comentas lios con las colas.

te recomiendo que cada form que crees lo hagas cuando lo necesites y luego lo liberes. Imagino que los estas creando al iniciar la aplicación, verdad?

Saludos.
__________________
Donald Shimoda [Team RO] - Blogs: Remobjects Pascal
Responder Con Cita
  #3  
Antiguo 15-08-2013
erickperez6 erickperez6 is offline
Miembro
 
Registrado: may 2003
Posts: 152
Poder: 21
erickperez6 Va por buen camino
Cita:
Empezado por donald shimoda Ver Mensaje
Por todo lo que comentas lios con las colas.

te recomiendo que cada form que crees lo hagas cuando lo necesites y luego lo liberes. Imagino que los estas creando al iniciar la aplicación, verdad?

Saludos.
Asi mismo lo tengo, todas las formas se crean y se destruyen conforme las voy necesitando
Responder Con Cita
  #4  
Antiguo 15-08-2013
Avatar de nlsgarcia
[nlsgarcia] nlsgarcia is offline
Miembro Premium
 
Registrado: feb 2007
Ubicación: Caracas, Venezuela
Posts: 2.206
Poder: 21
nlsgarcia Tiene un aura espectacularnlsgarcia Tiene un aura espectacular
erickperez6,

Cita:
Empezado por erickperez6

...tengo una aplicacion muy grande con algunas 250 formas y algunos 5 componentes de terceros...

...todas las formas se crean y se destruyen conforme las voy necesitando...

...Se me presenta un EAccessviolation abriendo algunas formas o al momento de cerrar la aplicacion...

...existe una funcion que utilizo mucho en casi todas las formas...le paso un string como parametro...la funcion no recibe el string...en el segundo intento si toma el valor...

...cuando la aplicacion era un poco mas pequeña no sucedian estos errores...

...tengo dos computadores con el mismo ambiente instalado, y los dos hacen lo mismo...

...se me ocurre que es un problema con el IDE de Delphi 7 o algun bug de los componentes de tercero...

...a veces compilo la aplicacion varias veces y uno de los ejecutable que me genera Delphi no me da los errores pero los demas si...
Pregunto:

1- ¿El problema de EAccessviolation ocurre de la misma manera con otras aplicaciones?.

2- ¿El problema mencionado se presenta siempre en el mismo conjunto de Forms o es aleatorio el Form donde ocurre la falla?.

3- ¿Existe alguna unidad que sea común a todos los forms que por su volumen sea candidata a ser dividida en unidades más especializadas?.

4- ¿La versión de Windows instalada esta actualizada a nivel de Updates y Service Pack?, ¿Que versión de Windows utilizas?.

5- ¿Que programa de seguridad utilizas?, ¿La falla se presenta si el programa de seguridad esta deshabilitado?.

6- ¿Si realizas un boot de Windows en modo Diagnostics y compilas la aplicación ocurre la falla mencionada?.

7- ¿Haz verificado el hardware de las máquinas en cuestión, específicamente Memoria RAM y Unidades de Almacenamiento?.

8- ¿Cuanta Memoria RAM tienen las máquinas en cuestión?.

9- ¿A que te refieres exactamente cuando mencionas que la falla no se presentaba cuando la aplicación era más pequeña?.

Espero sea útil

Nelson.

Última edición por nlsgarcia fecha: 15-08-2013 a las 08:40:21.
Responder Con Cita
  #5  
Antiguo 15-08-2013
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.040
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Está claro que es un error (o errores) en tu programa.
Yo he estado más de 10 años trabajando con una aplicación delphi 5+ibx+firebird con más de 1000 pantallas (forms) y muchísimos componentes variados y nunca hemos tenido ningún problema con delphi.
Al mismo tiempo con otros programas en delphi 7, también bastante grandes. Y finalmente con delphi 2007 (ahí me he quedado) con proyectos bastante "gordos" también y esos errores nunca han aparecido.

De todas formas, está claro que es lo que te han comentado, esas variables están apuntando a un trozo memoria que "alguien o algo" se la ha machacado.
Responder Con Cita
  #6  
Antiguo 15-08-2013
erickperez6 erickperez6 is offline
Miembro
 
Registrado: may 2003
Posts: 152
Poder: 21
erickperez6 Va por buen camino
Cita:
Empezado por nlsgarcia Ver Mensaje

1- ¿El problema de EAccessviolation ocurre de la misma manera con otras aplicaciones?.
No, solo en esta aplicacion

Cita:
Empezado por nlsgarcia Ver Mensaje
2- ¿El problema mencionado se presenta siempre en el mismo conjunto de Forms o es aleatorio el Form donde ocurre la falla?.
Es aleatorio

Cita:
Empezado por nlsgarcia Ver Mensaje
3- ¿Existe alguna unidad que sea común a todos los forms que por su volumen sea candidata a ser dividida en unidades más especializadas?.
Hay una o dos unidades que estan presente en muchos forms, pero no en todos, tampoco son muy grandes.

Cita:
Empezado por nlsgarcia Ver Mensaje
4- ¿La versión de Windows instalada esta actualizada a nivel de Updates y Service Pack?, ¿Que versión de Windows utilizas?.
Debo verificar si estan actualizadas, no me he percatado de esto

Cita:
Empezado por nlsgarcia Ver Mensaje
5- ¿Que programa de seguridad utilizas?, ¿La falla se presenta si el programa de seguridad esta deshabilitado?.
Utilizo una unidad de seguridad casera, hecha por mi, no se me ha ocurrido deshabilitarla todavia

Cita:
Empezado por nlsgarcia Ver Mensaje
6- ¿Si realizas un boot de Windows en modo Diagnostics y compilas la aplicación ocurre la falla mencionada?.
Necesito probar esto

Cita:
Empezado por nlsgarcia Ver Mensaje
7- ¿Haz verificado el hardware de las máquinas en cuestión, específicamente Memoria RAM y Unidades de Almacenamiento?.
ocurre la falla mencionada[/i][/u][/color]?.
Como tengo dos computadores con el mismo ambiente instalado, los cuales tienen hardware muy diferente, no creo que el problema este en esa direccion

Cita:
Empezado por nlsgarcia Ver Mensaje
8- ¿Cuanta Memoria RAM tienen las máquinas en cuestión?.
Un equipo tiene 4GB y el otro 3GB

Cita:
Empezado por nlsgarcia Ver Mensaje
9- ¿A que te refieres exactamente cuando mencionas que la falla no se presentaba cuando la aplicación era más pequeña?.
Cuando habian menos forms, menos lineas de codigo, hace unos meses atras, no veia estas clases de problema.

Cita:
Empezado por nlsgarcia Ver Mensaje
Espero sea útil

Nelson.
Gracias
Responder Con Cita
  #7  
Antiguo 15-08-2013
erickperez6 erickperez6 is offline
Miembro
 
Registrado: may 2003
Posts: 152
Poder: 21
erickperez6 Va por buen camino
Cita:
Empezado por Casimiro Notevi Ver Mensaje
Está claro que es un error (o errores) en tu programa.
Yo he estado más de 10 años trabajando con una aplicación delphi 5+ibx+firebird con más de 1000 pantallas (forms) y muchísimos componentes variados y nunca hemos tenido ningún problema con delphi.
Al mismo tiempo con otros programas en delphi 7, también bastante grandes. Y finalmente con delphi 2007 (ahí me he quedado) con proyectos bastante "gordos" también y esos errores nunca han aparecido.

De todas formas, está claro que es lo que te han comentado, esas variables están apuntando a un trozo memoria que "alguien o algo" se la ha machacado.
Estoy de acuerdo que el problema esta en la aplicacion en especifico que hace que el IDE de delphi se vuelva inestable y la misma aplicacion tambien
Responder Con Cita
  #8  
Antiguo 15-08-2013
Avatar de nlsgarcia
[nlsgarcia] nlsgarcia is offline
Miembro Premium
 
Registrado: feb 2007
Ubicación: Caracas, Venezuela
Posts: 2.206
Poder: 21
nlsgarcia Tiene un aura espectacularnlsgarcia Tiene un aura espectacular
erickperez6,

Cita:
Empezado por erickperez6
...Estoy de acuerdo que el problema esta en la aplicacion en especifico que hace que el IDE de Delphi se vuelva inestable y la misma aplicacion tambien...
Te comento:

1- Al parecer algo esta interfiriendo de forma aleatoria en el proceso de compilación y/o ejecución produciendo el error de EAccessviolation, el hecho de que algunas veces se logre compilar y ejecutar la aplicación y otras no sin hacer ninguna modificación sugiere un elemento externo que afecta el proceso de compilación más que el código en si mismo, si el problema fuera el código el error siempre estaría presente en tiempo de compilación o ejecución, sin embargo no se puede descartar esta variable, pregunto : ¿Tu aplicación utiliza apuntadores?.

2- El programa de seguridad casero, un servicio u otro programa activo al momento de la compilación son candidatos probables que pueden afectar aleatoriamente el proceso de compilación, si se hace un boot de Windows en modo Diagnostics y se compila la aplicación sin que este activo ningún otro programa se pueden descartar elementos externos, quedando solo por analizar Windows, Delphi 7 y la aplicación.

3- Para descartar problemas del IDE es conveniente reinstalar Delphi 7 en modo Repair, así como reinstalar los componentes de terceros (Del más probable al menos probable en relación a la falla), todo lo anterior de forma progresiva probando en cada caso la compilación de la aplicación y su comportamiento.

4- Sería conveniente analizar los mensajes del compilador y ver si hay diferencia entre la versión compilada que funciona y la que produce la falla, quizás haya algún Warning que sugiera el origen de la falla.

5- Otro punto a considerar es aislar (Comentar) partes del código al momento de la compilación para analizar su relación con la falla descrita.

6- Para finalizar te sugiero considerar una aplicación de seguridad como NIS 2013, la cual tiene mucho tiempo en el mercado, es reconocida mundialmente y tiene poco impacto en el sistema ademas de contar con actualizaciones constantes, esto permitiría descartar probables problemas de Malware que puedan estar relacionados con la falla en cuestión.

Espero sea útil

Nelson.

Última edición por nlsgarcia fecha: 15-08-2013 a las 20:24:24.
Responder Con Cita
  #9  
Antiguo 17-08-2013
JXJ JXJ is offline
Miembro
 
Registrado: abr 2005
Posts: 2.475
Poder: 22
JXJ Va por buen camino
instala el componente eurekalog

para que sepas por que parte de tu codigo se dan los errores.
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
donde puedo comprar libros en mexico, la biblia de delphi7 y mastering delphi7? sakuragi Varios 30 12-02-2013 18:37:51
Lentitud en aplicacion delphi7-fire bird gescoto99 Firebird e Interbase 7 16-03-2007 16:37:44
Como cargo una imagen desde Mysql hacia aplicacion Delphi7.0? gozi Conexión con bases de datos 1 06-02-2006 19:41:11
D7 Inestable brandolin Varios 16 03-11-2005 15:47:34
Instalador aplicación Delphi7 + bd oracle javito Oracle 3 13-08-2005 13:34:52


La franja horaria es GMT +2. Ahora son las 23:11:19.


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