Ich würde es auch in Delphi anders machen.
Erzeuge und zeig dein Formular im OnCreate/OnShow-Event des Hauptformulars an.
Wenn der Login nicht klappt dann beende das Hauptformular mit einem PostMessage(
Handle, WM_CLOSE, 0, 0).
Das dürfte sich fast 1:1 nach C#/WinForms umsetzen lassen.
Windows Vista - Eine neue Erfahrung in Fehlern.