Ver Mensaje Individual
  #8  
Antiguo 27-04-2015
doctorhd doctorhd is offline
Miembro
NULL
 
Registrado: abr 2013
Posts: 48
Reputación: 0
doctorhd Va por buen camino
nlsgarcia, Creo que ya encontré el error, este esta en la función que utilizo para cerrar los objetos:
Código Delphi [-]
procedure TfunGlobal.CloseObjet(AObjeto:Array of TObject);
var vIndice:Integer;
begin
  for vIndice:= Low(AObjeto) to High(AObjeto) do begin
    if Assigned(AObjeto[vIndice]) then FreeAndNil(AObjeto[vIndice]){Liberamos la memoria}
  end;{for}
end;{procedure}
Al parecer ciertos objetos se pasan por valor y no por referencia, ya que dentro del procedure freeandnil hace su trabajo y libera la memoria y los deja en nil, pero al salir del procedure dichos cambios no tienen efecto. Es muy raro ya que hasta donde se los objetos o clases siempre se pasan por referencia. Quizás exista algún error en la declaración del array que contiene los objetos...

saludos...
Responder Con Cita