AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

Programm stürzt bei "end;" ab

Ein Thema von Synollus · begonnen am 30. Mär 2009 · letzter Beitrag vom 3. Apr 2009
Antwort Antwort
Seite 1 von 2  1 2      
Synollus

Registriert seit: 29. Dez 2008
49 Beiträge
 
#1

Programm stürzt bei "end;" ab

  Alt 30. Mär 2009, 23:54
Ich weiß ja nicht, ob ihr mich jetzt für verrückt haltet, aber mein Programm stürzt im Einzeldurchgang mit F7 ab, wenn er ALLES abgearbeitet hat und er schon bei der Zeile end; (Ende der Procedure) ist, sprich bevor er die Form wieder anzeigen soll. Auch ohne Einzeldurchlauf geht es nicht. Ich kriege immer eine AccessViolation:

---------------------------
Benachrichtigung über Debugger-Exception
---------------------------
Im Projekt Purzelbaum.exe ist eine Exception der Klasse EAccessViolation aufgetreten. Meldung: 'Zugriffsverletzung bei Adresse 004032FE in Modul 'Purzelbaum.exe'. Lesen von Adresse FFFFFFD0'. Prozess wurde angehalten. Mit Einzelne Anweisung oder Start fortsetzen.
---------------------------
OK Hilfe
---------------------------

Wie kriege ich von Delphi einen detallierteren Fehler? ^^ Ich kann mir den Fehler nicht erklären. Ich gebe vorher Labels auf der Form frei und erstelle danach wieder welche. [Es dürften imho keine doppelten Namen geben, sonst würde er keine AV ausspucken, sondern ein "LabelX existiert schon." und das schon viel früher.] Und irgendwie scheint er damit Probleme zu haben. (Vorher ruft er eine Rekursion auf, malt ein bisschen in die Paintbox und erstellt ein paar Labels, genaugenommen geht es um das Anzeigen eines binären Suchbaumes (eigentlich würde ich alles mit Canvas machen, aber ich kann auf eine Art OnClick-Procedure der Knoten/Werte nicht verzichten.).)

Ich bin echt ratlos, was soll ich jetzt tun? Ich denke nicht, dass es am "end;" selbst liegt. Gibt es eine Möglichkeit eine bessere Fehlerbeschreibung zu kriegen?
  Mit Zitat antworten Zitat
Benutzerbild von 3_of_8
3_of_8

Registriert seit: 22. Mär 2005
Ort: Dingolfing
4.129 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Programm stürzt bei "end;" ab

  Alt 30. Mär 2009, 23:57
Du könntest mal im CPU-Fenster durchsteppen, aber ich denke nicht, dass das etwas bringt. Du könntest auch mal FastMem (heißt doch FastMem, oder? Weiß ich jetzt gar nicht mehr so genau) installieren, das ist ein Memory Manager, der sich genau merkt, wann was alloziert wurde und meckert, wenn man es nicht mehr freigibt, das wäre eine Möglichkeit. Du könntest auch mal deinen Code herzeigen, dann kann man sich vielleicht eher ein Bild davon machen.

EDIT: Schalte auch mal die Range Checks ein. Der Fehler sieht mir irgendwie fast danach aus, als würdest du irgendwo in einem Array außerhalb der Grenzen zugreifen oder sowas... schwer zu sagen, natürlich.
Manuel Eberl
„The trouble with having an open mind, of course, is that people will insist on coming along and trying to put things in it.“
- Terry Pratchett
  Mit Zitat antworten Zitat
Cyf

Registriert seit: 30. Mai 2008
407 Beiträge
 
Lazarus
 
#3

Re: Programm stürzt bei "end;" ab

  Alt 30. Mär 2009, 23:58
Das klingt als wäre der Aufrufstack zerschossen.
Man kann einen Barbier definieren als einen, der alle diejenigen rasiert, und nur diejenigen, die sich nicht selbst rasieren.
Rasiert sich der Barbier?
  Mit Zitat antworten Zitat
Benutzerbild von Mithrandir
Mithrandir
(CodeLib-Manager)

Registriert seit: 27. Nov 2008
Ort: Delmenhorst
2.379 Beiträge
 
#4

Re: Programm stürzt bei "end;" ab

  Alt 30. Mär 2009, 23:58
MadExcept ist ne feine Sache.

Aber das FFFFFFD0 sieht irgendwie mysteriös aus. Biste sicher, dass du alles wieder sauber frei gibts?
米斯蘭迪爾
"In einer Zeit universellen Betruges wird das Aussprechen der Wahrheit zu einem revolutionären Akt." -- 1984, George Orwell
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

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

Re: Programm stürzt bei "end;" ab

  Alt 31. Mär 2009, 00:14
Setze in der Projektdatei nach dem begin einmal ReportMemoryLeaksOnShutdown auf True. dann siehst du schon einmal, wenn der Standardspeichermanager Speicherlecks erkennt.

Dann gibts noch FastMM, das dies detaillierter auflistet, und einige andere ähnliche Tools.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Synollus

Registriert seit: 29. Dez 2008
49 Beiträge
 
#6

Re: Programm stürzt bei "end;" ab

  Alt 31. Mär 2009, 00:14
So,

danke euch allen erstmal. Ich schau mir gleich mal eure Vorschläge an. Ich habe mal schnell den unwichtigen Code aus meinem Programm genommen. Das Einzige was ich bewusst nicht freigebe, weil ich noch nicht soweit bin, sind die Knoten des Baumes vor dem Schließen des Programmes.

Ich habe eine globale Integer-Variable, die die erstellen Labels/Knoten mitzählt (fortlaufen numeriert), damit ich vor dem Neuzeichnen die alten Labels löschen und neue (von 1 wieder beginnend) erstellen kann. (Die Eleganz und Effizienz sei mal dahingestellt )
Angehängte Dateien
Dateityp: rar dp_102.rar (172,7 KB, 19x aufgerufen)
  Mit Zitat antworten Zitat
Benutzerbild von jaenicke
jaenicke

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

Re: Programm stürzt bei "end;" ab

  Alt 31. Mär 2009, 00:51
Das einzige, was Delphi selbst findet und anzeigt sind Speicherlecks, da die Knoten nicht freigegeben werden. Abstürzen tut dein Programm bei mir aber gar nicht, es funktioniert normal.

Da du wohl noch Delphi 7 hast, musst du dir für die Anzeige von Speicherlecks andere Tools suchen, Delphi selbst kann das erst ab 2005. Ich habs eben im kostenlosen Turbo Delphi ausprobiert.
Sebastian Jänicke
Alle eigenen Projekte sind eingestellt, ebenso meine Homepage, Downloadlinks usw. im Forum bleiben aktiv!
  Mit Zitat antworten Zitat
Synollus

Registriert seit: 29. Dez 2008
49 Beiträge
 
#8

Re: Programm stürzt bei "end;" ab

  Alt 31. Mär 2009, 08:10
Zitat von jaenicke:
Das einzige, was Delphi selbst findet und anzeigt sind Speicherlecks, da die Knoten nicht freigegeben werden. Abstürzen tut dein Programm bei mir aber gar nicht, es funktioniert normal.

Da du wohl noch Delphi 7 hast, musst du dir für die Anzeige von Speicherlecks andere Tools suchen, Delphi selbst kann das erst ab 2005. Ich habs eben im kostenlosen Turbo Delphi ausprobiert.
Habe ich auch schon gemerkt mit den Tools.

Zu dem Fehler: Ich habe wohl ganz vergessen zu erwähnen wo ihr suchen müsst. Gib mal eine "1" ein, danach eine "2" und dann klick mal auf die 2 im Baum. Dadurch wird nochmal die Prozedure Refresh aufgerufen. Und danach stürzt er bei mir ab.
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.767 Beiträge
 
Delphi 10.4 Sydney
 
#9

Re: Programm stürzt bei "end;" ab

  Alt 31. Mär 2009, 08:25
Guten Morgen,

nun, wenn ich das mit der exe im Zipfile ausprobiere laufe ich
in Fehler.

Probiere ich das mit der selbst kompilierten exe, kommen keine Fehler.

Hast Du Dein Programm mal komplett kompiliert (shift-F9/Build)?

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
Synollus

Registriert seit: 29. Dez 2008
49 Beiträge
 
#10

Re: Programm stürzt bei "end;" ab

  Alt 31. Mär 2009, 08:37
Zitat von Klaus01:
Guten Morgen,

nun, wenn ich das mit der exe im Zipfile ausprobiere laufe ich
in Fehler.

Probiere ich das mit der selbst kompilierten exe, kommen keine Fehler.

Hast Du Dein Programm mal komplett kompiliert (shift-F9/Build)?

Grüße
Klaus
Jup. Wenn ich F9 drücke und 1,2 eingebe und auf die 2 klicke, kommt genau derselbe Fehler.

ich muss jetzt erstmal auf den Wandertag. Mathe LK12 vs. Mathe LK13 Fussballspiel. Danach lade ich mir mal eines dieser Tools runter.
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


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 09:28 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