AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Laufzeitfehler bei Programmende

Ein Thema von skoschke · begonnen am 24. Sep 2020 · letzter Beitrag vom 25. Sep 2020
Antwort Antwort
Seite 1 von 2  1 2   
skoschke

Registriert seit: 6. Jan 2009
522 Beiträge
 
Delphi 10.4 Sydney
 
#1

Laufzeitfehler bei Programmende

  Alt 24. Sep 2020, 07:05
Hallo,

bei Programmende wirft meine Anwendung eine Exception der Klasse $C00000005 read of adresse 0x0000000000.

Beim Debuggen läuft alles bis ins OnClose des Formulars, das kann ich ohne Fehler durchsteppen und dann knallt es, das OnDestroy des Formulars (weiterer Haltepunkt) wird dann nicht mehr erreicht.

Ich habe keine Ahnung wo ich da ansetzen könnte um die Ursache zu finden...

Hat jemand einen Tip wie man hier generell vorgehen könnte?

Ciao
Stefan
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: München
11.412 Beiträge
 
Delphi 11 Alexandria
 
#2

AW: Laufzeitfehler bei Programmende

  Alt 24. Sep 2020, 07:12
Es ist so pauschal nicht zu sagen, aber irgendwo wird auf ein NIL-Pointer zugegriffen.

......
Daniel W.
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.169 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: Laufzeitfehler bei Programmende

  Alt 24. Sep 2020, 07:46
Compiliere mit Debug-DCUs.
Bei mir war es mal das ein DB-Verbindung erst beim Aufräumen der Anwendung beendet wurde.
Verlegt ins OnClose hatte geholfen.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.269 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: Laufzeitfehler bei Programmende

  Alt 24. Sep 2020, 08:28
Hallo,
läuft die Exe auf einem Netzlauwerk oder lokal?
Heiko
  Mit Zitat antworten Zitat
skoschke

Registriert seit: 6. Jan 2009
522 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: Laufzeitfehler bei Programmende

  Alt 24. Sep 2020, 08:46
Mit Debug DCU's compiliere ich bereits, nur wie sollen die bei der Fehlersuche helfen?

Dass da irgendwo auf etwas Nil zugegriffen wird, ist mir eigentlich klar, nur wie finde ich dieses?

Ciao
Stefan
  Mit Zitat antworten Zitat
skoschke

Registriert seit: 6. Jan 2009
522 Beiträge
 
Delphi 10.4 Sydney
 
#6

AW: Laufzeitfehler bei Programmende

  Alt 24. Sep 2020, 09:24
Ich habe MadExcept eingebaut, welches auch bei einem provozierten Fehler (ButtonClick der Division durch 0 erzeugt) wunderbar anzeigt.
Erst kommt der Division durch 0 Fehler und danach geht das MadExcept-Fenster auf.

Nur bei Programmende schlägt MadExcept nicht an, ich bekomme den oben gemeldeten Fehler ohne dass danach MadExcept aufgeht.

Und nun???

Ach so, die Exe läuft lokal...

Ciao
Stefan
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

Registriert seit: 10. Jun 2003
Ort: Berlin
9.288 Beiträge
 
Delphi 11 Alexandria
 
#7

AW: Laufzeitfehler bei Programmende

  Alt 24. Sep 2020, 09:54
Wie sieht denn bei dem Fehler der Stacktrace aus?

// EDIT:
Vermutlich passiert da etwas im finalization einer Unit oder bei der Freigabe eines Interfaces. Es kann auch ein weiteres Formular sein, das erst am Ende freigegeben wird und dabei einen Fehler verursacht.

Zum Beispiel passiert so etwas, wenn man ein Objekt als Objekt UND als Interface anspricht und es dann aus Versehen freigibt. Dann wird am Ende das Interface versucht freizugeben, aber das Objekt ist schon weg.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!

Geändert von jaenicke (24. Sep 2020 um 09:56 Uhr)
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.017 Beiträge
 
Delphi 12 Athens
 
#8

AW: Laufzeitfehler bei Programmende

  Alt 24. Sep 2020, 10:14
Tja, wenn es im Delphi-Code nicht weiter geht, dann mußt du wohl in die Assembleransicht wechseln.


Zeigt der Stacktrace irgendwas an?
Wenn nicht, dann nochmal "F7" nach dem Fehler versuchen, eventuell vorher in den Assembler wechseln.

aber irgendwo wird auf ein NIL-Pointer zugegriffen.
Ja, hier vermutlich ein Event-Zeiger, wo versucht wird an Adresse $000000 Code auszuführen. (wo es im UserMode niemals Code/Daten geben wird)
Denn sonst heißt der Fehler ja "Fehler bei Adresse xxxx, Lesen/Schreiben von Adresse yyyy" und hier ist dieser Fehler an der Code-Adresse 0.

Es kann natürlich auch etwas wie ein Buffer-Overflow sein, wo z.B. der Stack zerschossen wurde.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu (24. Sep 2020 um 11:52 Uhr)
  Mit Zitat antworten Zitat
hoika

Registriert seit: 5. Jul 2006
Ort: Magdeburg
8.269 Beiträge
 
Delphi 10.4 Sydney
 
#9

AW: Laufzeitfehler bei Programmende

  Alt 24. Sep 2020, 10:22
Hallo,
arbeitet Dein Programm mit Interfaces?
Heiko
  Mit Zitat antworten Zitat
skoschke

Registriert seit: 6. Jan 2009
522 Beiträge
 
Delphi 10.4 Sydney
 
#10

AW: Laufzeitfehler bei Programmende

  Alt 24. Sep 2020, 10:33
Zitat:
arbeitet Dein Programm mit Interfaces?
nein
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2   

Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 13:14 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz