Das Problem ist wahrscheinlich, dass beim Beenden auf ein Objekt zugegriffen wird, welches schon freigegeben wurde. Wobei es dabei etwas verwunderlich ist, dass es nur sporadisch auftritt. Somit wird das Programm in verschiedenen Zuständen beendet.
Aber ohne nähere Informationen kann dir so direkt nicht geholfen werden.
Compilier mal
madExcept mit ein. Damit kannst du dir die
Unit und die Zeile anzeigen, in der die
Exception auftritt.
»Remember, the future maintainer is the person you should be writing code for, not the compiler.« (Nick Hodges)