Tipp: Ersetze mal die FDConnection1.Free;
durch FreeAndNil(FDConnection1);
und du dirst dein Problem von ganz alleine finden.
[EDIT]
TComponent räumt die Variable in der Forminstanz von selber auf.
Also was sagt dir der "komplette" Fehler?
Anderer Tipp: in Dialogen und im Compiler-/Debugger-Log kann man Strg+C machen und das alles hier als Text einfügen.
Zitat:
Zugriffsverletzung bei Adresse 00000xx
Was denkst du, will dir das NIL (0 + kleines Offset) denn wohl sagen?
Auch mal das Durchgestrichene lesen und die betroffenen Codezeilen genauer betrachten.
Und für diese Fehlerbehandlung sollte jemand bestraft werden.
Wie kommt man denn bitte auf diese saublöde Idee die eigentliche Fehlermeldung zu vernichten?
Stattdessen einen "nutzlosen" und nichtssagenden Text anzeigen und den Exceptiontext nicht mit anzeigen oder wenigstens zu loggen.