Einzelnen Beitrag anzeigen

milchschnitte

Registriert seit: 26. Mär 2007
Ort: Berlin
4 Beiträge
 
#1

Unerklärliche EAccessViolation am Ende einer Prozedur!?

  Alt 7. Aug 2007, 15:33
Ja hallo, ich hab ein mir unerklärliches Problem mit Delphi 6..

Ich habe, grob gesagt, mehrere dynamisch erzeugte Buttons mit derselben OnClick-Prozedur. Die Buttons sollen halt Einträge in einer Liste löschen. Ist aber eigentlich auch irrelevant.

Nun tritt manchmal (abhängig davon, in welcher Reihenfolge ich die Listeneinträge lösche!) eine EAccesViolation beim Klicken des Buttons auf.

Kein Problem denk ich mir, ich setze also einen Haltepunkt an das "begin" der OnClick-Prozedur.

Ergebnis: Die gesamte Prozedur läuft ohne Probleme durch! Erst wenn ich am "end;" der Prozedur angelangt bin, und fortfahren will, erscheint die Exception.. Dabei ist die Prozedur doch schon beendet!? Der "Zeiger" im Quelltext springt dann auf das "end." des Projekt-Quellcodes.

Woran könnte das liegen!? Was passiert beim Beenden einer OnClick-Prozedur, das eventuell den Fehler auslösen könnte?

Der Button, auf den ich klicke, wird in der OnClick-Prozedur gelöscht (halt dynamisch erstellt). Das dürfte allerdings auch kein Problem sein, da es ja in den meisten Fällen funktioniert..

[edit] Hier noch die gesamte Fehlermeldung:
Project termine.exe raised exception class EAccessViolation with message 'Access violation at address 004039B5 in module 'termine.exe'. Read of address 00000028'. Process stopped. Use Step or Run to continue.
  Mit Zitat antworten Zitat