Delphi-PRAXiS
Seite 1 von 2  1 2   

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Programmieren allgemein (https://www.delphipraxis.net/40-programmieren-allgemein/)
-   -   Zugriffsverletzung Adresse 0000000 beim beenden (https://www.delphipraxis.net/194022-zugriffsverletzung-adresse-0000000-beim-beenden.html)

stalkingwolf 9. Okt 2017 08:42

Zugriffsverletzung Adresse 0000000 beim beenden
 
Guten Morgen,

nach dem ich ein Programm von D6 auf XE portiert habe, bekommt dieses Programm ab und zu beim beenden eine Fehlermeldung beim lesen von Adresse 0000000.
Die 0000000 wird wohl ein generischer Platzhalter sein.

Ich frag mich wie ich das debuggen kann?

Ab und zu läuft das Programm dadurch weiter. Ab und zu sogar mit 25% Leistung. Also quasi einem Kern.

hoika 9. Okt 2017 09:04

AW: Zugriffsverletzung Adresse 0000000 beim beenden
 
Hallo,
das sieht wie NIL-Zugriff aus.
-> MadExcept oder etwas ähnliches benutzen.

himitsu 9. Okt 2017 10:39

AW: Zugriffsverletzung Adresse 0000000 beim beenden
 
Oder auch einfach erstmal im Debugger startet und schauen, ob man nicht auch so schon sieht, wo es knallt. :stupid:

stalkingwolf 9. Okt 2017 10:42

AW: Zugriffsverletzung Adresse 0000000 beim beenden
 
Ne leider nicht.
ich probiere es mal mit madExcept

sakura 9. Okt 2017 10:43

AW: Zugriffsverletzung Adresse 0000000 beim beenden
 
Wenn Du mit dem Debugger nicht weiter kommst, dann empfehle ich dir aus madExcept. Da kannst Du Dir dann einen komplette Call-Stack anzeigen lassen, für den Moment der Exception.

Da es Dir beim Beenden der Anwendung passiert, könnte Dir auch FastMM4 weiter helfen, da du hier auch solche Informationen anzeigen lassen kannst. Ist generell eine gute Option als Speichermanager für Delphi Anwendungen.

...:cat:...

stalkingwolf 11. Okt 2017 09:19

AW: Zugriffsverletzung Adresse 0000000 beim beenden
 
Ok ich habe das Crashlog von madExcept. Aber woran erkenne ich nun woran es gelegen hat?

exception message : Externe Exception C000001D

Das war doch etwas aus der C Library welches Delphi nicht adressieren kann oder?
Ich kenne die Meldung wenn ich z.b in Delphi übersetze und dann ein shell_execute aufrufe. Dann tritt der Fehler ab und zu auch auf.

Luckie 11. Okt 2017 09:46

AW: Zugriffsverletzung Adresse 0000000 beim beenden
 
Also wenn es beim Beenden der Anwendung zu einer Exception kommt, dann sieht es so aus als wenn das Programm beim selbst Aufräumen noch auf etwas zugreifen will, was du schon freigegeben hast.

stalkingwolf 11. Okt 2017 10:20

AW: Zugriffsverletzung Adresse 0000000 beim beenden
 
Ich gebe nichts frei worauf das Programm noch zugreifen will bzw. sollte.
Vor allem da es unter Delphi 6 ohne Probleme sich beendet hat und unter XE auch nur ab und zu dazu kommt. Auch haben nicht alle unsere Kunden das Problem das die Fehlermeldung kommt.

sakura 11. Okt 2017 10:33

AW: Zugriffsverletzung Adresse 0000000 beim beenden
 
Hänge doch das Crash-Log mal an - lässt sich im Dialog als TXT-Datei speichern.

...:cat:...

Luckie 11. Okt 2017 13:12

AW: Zugriffsverletzung Adresse 0000000 beim beenden
 
Dann zerschießt du dir irgendwo den Speicher und hast bisher nur Glück gehabt.


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:30 Uhr.
Seite 1 von 2  1 2   

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