Ich handhabe das so, dass die Größe und Position bei Resize oder Move meines Formulares in ein Array geschrieben wird.
Diese vier Werte speichere ich dann im OnClose.
Dazu kann man z.B. verwenden
Delphi-Quellcode:
procedure WMFormMoved(var msg: TWMMove); message WM_MOVE;
// und
procedure FormResize(Sender: TObject);