![]() |
Grund für EAccessViolation in finalization-Abschnitt finden
Moin zusammen,
ich bin kurz vorm Verzweifeln wegen folgendem Problem: Wenn ich mein Programm (gebastelt mit Delphi 7) beende, dann gibts eine EAccessViolation Exception. Auslöser ist wohl eines meiner Formulare, da die Exception nur dann geworfen wird, wenn ein bestimmtes Formular vorher offen war. Dummerweise finde ich aber den Punkt, an dem es tatsächlich knallt nicht, da dies erst in irgendeinem finalization-Abschnitt einer nicht zum Projekt gehörenden Unit passiert. D.h. ich bin danach auch nicht im Debug-Modus, sondern das Programm wird direkt zurückgesetzt und ich kann mir den Aufruf Stack nicht mehr ansehen. Um das Problem einzukreisen habe ich zunächst MemCheck versucht, aber Überraschung: wenn MemCheck im Projekt ist, tritt der Fehler überhaupt nicht mehr auf! Ok, MemCheck raus und FastMM rein und ich bekomme folgendes: Zitat:
VG, Daniel |
Re: Grund für EAccessViolation in finalization-Abschnitt fin
Du hast wohl irgendwo eine "kaputte" Interfacevariable, also welche nicht auf NIL steht, wo aber kein Objekt mehr dahintersteckt.
Eventuell hast du selber das Objekt vorzeitig freigegeben, die Referenzzählung funktioniert nicht richtig, mit der Variable stimmt was nicht (eventuell auch ein Bufferoverrun) oder sonstwas in der Art. Halte also mal ausschau nach "fehlerhaften" Schreiboperationen (z.B. via Pointer) oder genutzten Interfaces, da wo du den Fehler vermutest ... also in dem Formular und seinen zugehörenden Codes. |
Re: Grund für EAccessViolation in finalization-Abschnitt fin
davon hatte ich auch ein paar Fehler heute. Konnte die Unit/ Komponente ausmachen, bei der dieser Fehler auftrat und wie himitsu schon sagt, scheint man dort wirklich ein paar Sachen beachten zu müssen. Allerdings um dich zu beruhigen, meistens waren es keine gravierenden Fehler, welche lange Ausbesserungen erforderte.
Weil mir die Erklärung gut geholfen haben von DeddyH, ![]() |
Re: Grund für EAccessViolation in finalization-Abschnitt fin
Problem gelöst. Erklärung hab ich
![]() VG, Daniel |
Alle Zeitangaben in WEZ +1. Es ist jetzt 20:52 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz