AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein Zugriffsverletzung Adresse 0000000 beim beenden
Thema durchsuchen
Ansicht
Themen-Optionen

Zugriffsverletzung Adresse 0000000 beim beenden

Ein Thema von stalkingwolf · begonnen am 9. Okt 2017 · letzter Beitrag vom 12. Okt 2017
Antwort Antwort
Seite 2 von 2     12   
generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.416 Beiträge
 
Delphi XE5 Professional
 
#11

AW: Zugriffsverletzung Adresse 0000000 beim beenden

  Alt 11. Okt 2017, 14:37
Probier mal FastMM mit Fulldebugmode.
Coding BOTT - Video Tutorials rund um das Programmieren - https://www.youtube.com/@codingbott
  Mit Zitat antworten Zitat
stalkingwolf

Registriert seit: 6. Mai 2011
540 Beiträge
 
#12

AW: Zugriffsverletzung Adresse 0000000 beim beenden

  Alt 12. Okt 2017, 09:05
Anbei die Fehlermeldung vom dem external exception beim beenden.
Ich hab sie etwas gekürzt. Module und Prozesse entfernt.

Code:
date/time         : 2017-10-11, 09:05:37, 943ms
computer name     : TS01
wts client name   :
user name         :
registered owner  : Windows-Benutzer
operating system  : Windows 2008 R2 x64 Service Pack 1 build 7601
system language   : German
system up time    : 25 days 22 hours
program up time   : 1 minute 55 seconds
processors        : 8x Intel(R) Xeon(R) CPU E5645 @ 2.40GHz
physical memory   : 7042/8191 MB (free/total)
free disk space   : (C:) 222,03 GB
display mode      : 1920x1080, 16 bit
process id        : $e5c
allocated memory  : 47,44 MB
largest free block : 792,48 MB
executable        : programm.exe
exec. date/time   : 2017-10-09 15:02
version           : 1.0.0.0
compiled with     : Delphi XE4
contact name      :
contact email     :
madExcept version : 4.0.18
callstack crc     : $66ef8f7a, $82e8af82, $82e8af82
exception number  : 1
exception class   : EExternalException
exception message : Externe Exception C000001D.

main thread ($5d4):
00530051 +02d programm.exe     System.Classes         TStream.ReadBufferData
0067bfe5 +01d programm.exe     Vcl.Menus              TPopupList.MainWndProc
00541530 +014 programm.exe     System.Classes         StdWndProc
778e0107 +02b ntdll.dll                           KiUserCallbackDispatcher
004093d0 +008 programm.exe     System        622   +0 TObject.Free
005bf685 +019 programm.exe     Vcl.Controls           DoneControls
005c12f7 +02b programm.exe     Vcl.Controls           Finalization
0040aada +03e programm.exe     System        622   +0 FinalizeUnits
004ab290 +054 programm.exe     madExcept              InterceptFinalizeUnits
004ab298 +000 programm.exe     madExcept              InterceptHalt0FinalizeUnits
0040af11 +09d programm.exe     System        622   +0 @Halt0
00b51802 +70a programm.exe     P70            184 +109 initialization
765a3368 +010 kernel32.dll                        BaseThreadInitThunk

thread $828:
778f1f3f +0b ntdll.dll    NtWaitForWorkViaWorkerFactory
765a3368 +10 kernel32.dll BaseThreadInitThunk

thread $a40:
778f0156 +0e ntdll.dll    NtWaitForMultipleObjects
765a3368 +10 kernel32.dll BaseThreadInitThunk

thread $1014:
778ef8ca +0e ntdll.dll               NtWaitForSingleObject
76431497 +92 KERNELBASE.dll          WaitForSingleObjectEx
765a118f +3e kernel32.dll            WaitForSingleObjectEx
765a1143 +0d kernel32.dll            WaitForSingleObject
004abec1 +0d programm.exe       madExcept CallThreadProcSafe
004abf26 +32 programm.exe       madExcept ThreadExceptFrame
765a3368 +10 kernel32.dll            BaseThreadInitThunk
>> created by main thread ($5d4) at:
74ae4c95 +00 winspool.drv

thread $784:
778f1f3f +0b ntdll.dll    NtWaitForWorkViaWorkerFactory
765a3368 +10 kernel32.dll BaseThreadInitThunk

thread $b04:
778f1f3f +0b ntdll.dll    NtWaitForWorkViaWorkerFactory
765a3368 +10 kernel32.dll BaseThreadInitThunk

thread $8fc:
778f0156 +0e ntdll.dll               NtWaitForMultipleObjects
764315e3 +fa KERNELBASE.dll          WaitForMultipleObjectsEx
765a19f7 +89 kernel32.dll            WaitForMultipleObjectsEx
76a10864 +00 USER32.dll              MsgWaitForMultipleObjectsEx
76a10b64 +1a USER32.dll              MsgWaitForMultipleObjects
004abec1 +0d programm.exe       madExcept CallThreadProcSafe
004abf26 +32 programm.exe       madExcept ThreadExceptFrame
765a3368 +10 kernel32.dll            BaseThreadInitThunk
>> created by main thread ($5d4) at:
745578e1 +00 gdiplus.dll

thread $1750:
778f1f3f +0b ntdll.dll    NtWaitForWorkViaWorkerFactory
765a3368 +10 kernel32.dll BaseThreadInitThunk

cpu registers:
eax = 02d04d0c
ebx = 00000000
ecx = 08654e54
edx = 0018fd58
esi = 00290d72
edi = 00000000
eip = 0053004d
esp = 0018fd30
ebp = 0018fd50

stack dump:
0018fd30  e8 bf 67 00 fc fd 18 00 - b4 a4 40 00 50 fd 18 00  ..g.......@.P...
0018fd40  00 00 00 00 72 0d 29 00 - 00 00 00 00 0c 4d d0 02  ....r.)......M..
0018fd50  68 fd 18 00 32 15 54 00 - 1c 00 00 00 00 00 00 00  h...2.T.........
0018fd60  48 0c 00 00 00 00 00 00 - 94 fd 18 00 fa 62 a0 76  H............b.v
0018fd70  32 00 03 00 1c 00 00 00 - 00 00 00 00 48 0c 00 00  2...........H...
0018fd80  72 0d 29 00 cd ab ba dc - 00 00 00 00 00 00 00 00  r.).............
0018fd90  72 0d 29 00 0c fe 18 00 - 3a 6d a0 76 72 0d 29 00  r.).....:m.vr.).
0018fda0  32 00 03 00 1c 00 00 00 - 00 00 00 00 48 0c 00 00  2...........H...
0018fdb0  bd 53 e7 60 00 00 00 00 - 32 00 03 00 38 89 7f 08  .S.`....2...8...
0018fdc0  24 00 00 00 01 00 00 00 - 00 00 00 00 00 00 00 00  $...............
0018fdd0  30 00 00 00 ff ff ff ff - ff ff ff ff e9 6c a0 76  0............l.v
0018fde0  00 00 00 00 30 c1 44 01 - 00 00 00 00 00 00 00 00  ....0.D.........
0018fdf0  00 00 00 00 b0 fd 18 00 - 70 9a 44 01 58 fe 18 00  ........p.D.X...
0018fe00  1e a6 a6 76 e9 c0 5f 16 - 00 00 00 00 68 fe 18 00  ...v.._.....h...
0018fe10  e8 6d a0 76 00 00 00 00 - 72 0d 29 00 32 00 03 00  .m.v....r.).2...
0018fe20  1c 00 00 00 00 00 00 00 - 48 0c 00 00 d8 ec 91 01  ........H.......
0018fe30  01 00 00 00 d9 53 e7 60 - 38 5d 7f 08 00 00 00 00  .....S.`8]......
0018fe40  38 89 7f 08 86 58 06 75 - be 02 03 00 00 00 00 00  8....X.u........
0018fe50  34 fe 18 00 00 00 00 00 - b4 fe 18 00 1e a6 a6 76  4..............v
0018fe60  49 c0 5f 16 fe ff ff ff - a4 fe 18 00 44 6e a0 76  I._.........Dn.v

disassembling:
004093c8     public System.TObject.Free:     ; function entry point
004093c8 622   test   eax, eax
004093ca      jz     loc_4093d3
004093cc      mov    dl, 1
004093ce      mov    ecx, [eax]
004093d0     > call   dword ptr [ecx-4]
004093d3       ret
  Mit Zitat antworten Zitat
Benutzerbild von sakura
sakura

Registriert seit: 10. Jun 2002
Ort: Unterhaching
11.412 Beiträge
 
Delphi 12 Athens
 
#13

AW: Zugriffsverletzung Adresse 0000000 beim beenden

  Alt 12. Okt 2017, 09:42
Das ist, wie schon vorher vermutet, mit sehr hoher Wahrscheinlichkeit die doppelte Freigabe eines Objektes. Installiere Dir FastMM4 - https://github.com/pleriche/FastMM4 - und binde dieses als erstes in Dein Projekt ein, kopiere die Debug-DLL (ist im Download enthalten) in das Anwendungsverzeichnis und ersetze mal die originale INC-Datei mit der aus dem Anhang hier. Dann solltest Du folgende Informationen am Ende erhalten:
  1. Wo wurde der Speicher das erste Mal reserviert
  2. Wann und wo wurde dieser wieder frei gegeben
  3. Wann wurde anschließend nochmals darauf zugegriffen - bzw. nochmals frei gegeben.

......
Angehängte Dateien
Dateityp: 7z FastMM4Options.7z (6,1 KB, 4x aufgerufen)
Daniel Lizbeth
Ich bin nicht zurück, ich tue nur so
  Mit Zitat antworten Zitat
generic

Registriert seit: 24. Mär 2004
Ort: bei Hannover
2.416 Beiträge
 
Delphi XE5 Professional
 
#14

AW: Zugriffsverletzung Adresse 0000000 beim beenden

  Alt 12. Okt 2017, 17:15
In einer Unit im Finalization Teil wird ein Objekt erneut freigegeben.

Bezüglich der FastMM Konfiguration:
Ich verändere nie die Include-Datei sondern setze einfach "FullDebugMode" als Define (in den Projekt Optionen).
Coding BOTT - Video Tutorials rund um das Programmieren - https://www.youtube.com/@codingbott
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 2 von 2     12   


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