Der originale Code hat ja gar kein Show und das ActiveForm wird auch erst später gesetzt (sollte eigentlich obsolet sein, da das bereits in SetFocusedControl passiert).
Es wäre nun schön, die exakte Zeile in SetFocusedControl zu kennen um den Fehler besser zu analysieren. Also entweder im Debugger laufen lassen (geht nur, wenn der Fehler forciert werden kann) oder mit Debug-DCUs compilieren, dann bekommt man auch die Zeilennummern im Callstack.
Wichtig, ich benutze embedded Forms...
Vermutlich liegt da der Hund begraben...