Moin Fredel,
und wenn Du das Objekt freigibst, dann mit
Code:
FreeAndNil(Objektbezeichner);
// oder
Objektbezeichner.Free;
Objektbezeichner := nil;
ansonsten würde nach einer Freigabe des Objektes noch ein Wert in der Variablen stehen, der dann aber auf einen ungültigen Speicherbereich zeigt, was zur Folge hätte, dass die Abfrage <> nil bzw. Assigned true zurückliefert obwohl nicht mehr auf ein Objekt gezeigt wird.