Может, ты не закрываешь главную форму, а просто оставляешь ее невидимой? Например, ты закрываешь Form2, а Form1 у тебя остается невидимой (visible=false). Тогда тебе может помочь это...
Код:
procedure TForm2.FormClose(Sender: TObject; var Action: TCloseAction);
begin
Form1.Close;
end;