Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Varios (https://www.clubdelphi.com/foros/forumdisplay.php?f=11)
-   -   Aplicacion se "Cuelga" al cerrarse (https://www.clubdelphi.com/foros/showthread.php?t=77637)

kverna 14-02-2012 16:07:31

Aplicacion se "Cuelga" al cerrarse
 
Hola amigos del foro.Tengo una aplicación construida en Delphi 7 que trabaja sobre una BD Firebird 2.5.
Por alguna razón que desconozco la aplicación suele "colgarse ó tildarse"(según como le llamen uds) en el momento de cerrar(Verifico que el exe sigue corriendo en el Administrador de Tareas).

En el momento de cerrar el Form principal no hago mas que desconectar la base de datos y cerrar el Form(close()).

Esta aplicación corre principalmente sobre windos xp y la verdad es que no encuentro cual puede ser el motivo.Lo más curioso es que no siempre ocurre.

Googleando encontré algunas recomendaciones para liberar memoria(que podría ser una de las causas de este problema), como el siguiente código muestra:

procedure
LiberarMemoria;
begin
if
Win32Platform = VER_PLATFORM_WIN32_NT then
SetProcessWorkingSetSize(GetCurrentProcess, $FFFFFFFF, $FFFFFFFF);
end
;

Mi pregunta concreta es si alguna vez se han enfrentado a esta situación y como la resolvieron, si utilizaron algún código similar al anterior o si pueden indicarme como comenzar a rastrear el/los problemas porque la verdad es que no he encontrado ningún signo del mismo.

Desde ya agradezco su ayuda.

Chris 14-02-2012 18:23:28

Pueden ser muchas causas. Una de ellas puede ser una excepción silenciosa, del tipo:
Código Delphi [-]
try
..
except on Exception do
  // quedarse callado!
end;

También revisa la propiedad ShowMainWindow del objeto aplicación.

A cómo te decía, son muchas las causas. Tendrás que depurar tu código, más en la sección en dónde desconectas la DB o talvez otro código que ejecutes al cerrar la aplicación.

Saludos!

kverna 14-02-2012 18:38:23

Gracias Chris por tu respuesta.Probaré esta propiedad y excepcion que mencionas..

Saludos


La franja horaria es GMT +2. Ahora son las 01:02:45.

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