Zu Delphi 7-Zeiten ging:
Programm im Debugger starten.
Laufenlassen, bis der Fehler auftritt. Im Idealfall geht der Debugger zu der Stelle, an der der Fehler auftritt.
Wenn nein: Fehleradresse aus der Fehlermeldung nehmen.
In der
IDE im Menü "Suchen" den Menüeintrag "Laufzeitfehler suchen ..." auswählen, im Eingabefenster die Fehleradresse aus der Fehlermeldung eingeben und suchen lassen.
Mit etwas Glück kommt man an die genaue Fehlerstelle.
Bei 'ner Accessvolation wird meist auf etwas zugegriffen, was es nicht (mehr) gibt. Der Fehler kann also auch außerhalb der verdächtigen Routine liegen, höchstwahrscheinlich "irgendwo kurz vor dem Aufruf der verdächtigen Routine" oder der Fehlerbehandlung per Try / Except.