Ver Mensaje Individual
  #4  
Antiguo 26-02-2008
Avatar de jachguate
jachguate jachguate is offline
Miembro
 
Registrado: may 2003
Ubicación: Guatemala
Posts: 6.254
Reputación: 28
jachguate Va por buen camino
Si es el único lugar, tanto if está de mas, es mejor algo como:

Código Delphi [-]
var
  frmX: TfrmX;
begin
  frmX := TfrmX.Create(nil);
  try
    HacerAlgoCon(frmX);
  finally
    frmX.Free;
  end;
end;

Que tiene ventajas:
  • Al usar una variable local, se asegura que sea el único lugar del programa donde se tiene acceso a ella, sin efectos colaterales en otros sitios.
  • garantiza que el recurso asignado es liberado al usar try/finally

Si sigue dando error, quizás en otro sitio se esté jugando a liberar recursos que pertenecen a dicho formulario, lo que daría problema en su destructor, o quizás el problema se esté dando en un evento que se dispara como parte de la secuencia de destrucción: OnClose, OnDestroy, etc.

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