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 19-12-2005
Luis Castillo Luis Castillo is offline
Miembro
 
Registrado: jun 2003
Ubicación: Colombia
Posts: 102
Poder: 21
Luis Castillo Va por buen camino
La Aplicacion se cierra...

Colegas....

Tengo un problemita que talvez sea un problemon:

ES sencillo, cuando entro a un modulo del programa....toda la aplicacion se me cierrra...

Creo que es un error algo asi: Stack overflow...algo asi como memoria que se desborda....creo que debo revisar que no se libera...pero a ver si ustedes les ha pasado y pueden decirme alguito.

Les agradesco cualquier ayuda

Luis Castillo
__________________
LK
Responder Con Cita
  #2  
Antiguo 19-12-2005
Avatar de delphi.com.ar
delphi.com.ar delphi.com.ar is offline
Federico Firenze
 
Registrado: may 2003
Ubicación: Buenos Aires, Argentina *
Posts: 5.932
Poder: 27
delphi.com.ar Va por buen camino
El Stack es la pila donde se "apilan" todos los punteros de procedimientos, parámetros... Si estas llamando a un procedimiento recursivamente una gran cantidad de veces, desbordarás la pila y veras ese mensaje de error.

Código Delphi [-]
procedure FillStack;
begin
  FillStack; {Cada vez que se llame recursivamente agregará un valor a la pila}
end;

Puedes ver la pila de llamadas (sin sus parámetros) desde el menú View \ Debug Windows \ Call Stack.

Saludos!
__________________
delphi.com.ar

Dedique el tiempo suficiente para formular su pregunta si pretende que alguien dedique su tiempo en contestarla.
Responder Con Cita
  #3  
Antiguo 19-12-2005
Avatar de Héctor Randolph
[Héctor Randolph] Héctor Randolph is offline
Miembro Premium
 
Registrado: dic 2004
Posts: 882
Poder: 20
Héctor Randolph Va por buen camino
En realidad el mensaje de error te indica que lo que se ha desordado es la pila, seguramente tienes algún procedimiento que se invoca recursivamente y no termina.

Es dificíl que la pila se desborde con la operación normal de una aplicación, revisa bien si existe un procedimiento que se llame a si mismo y entra en un ciclo infinito.

Saludos.
Responder Con Cita
  #4  
Antiguo 19-12-2005
Avatar de Héctor Randolph
[Héctor Randolph] Héctor Randolph is offline
Miembro Premium
 
Registrado: dic 2004
Posts: 882
Poder: 20
Héctor Randolph Va por buen camino
Se me ha adelantaado Federico, bueno el caso es que las respuestas mas o menos coinciden.

Saludos.
Responder Con Cita
  #5  
Antiguo 19-12-2005
Luis Castillo Luis Castillo is offline
Miembro
 
Registrado: jun 2003
Ubicación: Colombia
Posts: 102
Poder: 21
Luis Castillo Va por buen camino
Nota

PUes me he dado cuenta que se cierra la aplicacion cuando abro una tabla...

Incluso cuando en en tiempo de diseño abro la tabla, se cierra hasta delphi...

O sea, No es una llamada a un procedimiento

Que opinan

Gracias...
__________________
LK
Responder Con Cita
  #6  
Antiguo 19-12-2005
aledieb aledieb is offline
Miembro
 
Registrado: jun 2005
Ubicación: Buenos Aires, Argentina
Posts: 141
Poder: 19
aledieb Va por buen camino
Fijate en los eventos de la tabla, a mi paso algo parecido y era un evento de la tabla que tenia codigo erroneo.
__________________
Suerte
Alejandro
Responder Con Cita
  #7  
Antiguo 19-12-2005
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Poder: 27
jachguate Va por buen camino
Puede estar ocurriendo una llamada recursiva indirecta:

Suponé el código:

Código Delphi [-]
Procedure a;
begin
  b;
end;

procedure b;
begin
  a;
end;

Irremediablemente ocurrirá un EStackOverflow cuando se llame a el procedimiento a o b.

Es comun entrar en un ciclo recursivo indirecto, por ejemplo, modificando el valor de un campo en su propio evento OnChange, sin una condición que rompa el ciclo recursivo o un control adecuado de la misma.

Te recomiendo tratar de seguir el código paso a paso, observando en todo momento si no estas en esta situación.

Hasta luego.

__________________
Juan Antonio Castillo Hernández (jachguate)
Guía de Estilo | Etiqueta CODE | Búsca antes de preguntar | blog de jachguate
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 00:51: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