AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein FastMM Memory Error Detected beim Debuggen
Thema durchsuchen
Ansicht
Themen-Optionen

FastMM Memory Error Detected beim Debuggen

Ein Thema von TiGü · begonnen am 8. Aug 2012 · letzter Beitrag vom 13. Aug 2012
Antwort Antwort
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.062 Beiträge
 
Delphi 10.4 Sydney
 
#1

FastMM Memory Error Detected beim Debuggen

  Alt 8. Aug 2012, 13:34
Delphi-Quellcode:
---------------------------
X.exe: Memory Error Detected
---------------------------
FastMM has detected an error during a FreeMem operation. An attempt has been made to free/reallocate a block that was allocated through a different FastMM instance. Check your memory manager sharing settings.

The block size is: 18

This block was allocated by thread 0x818, and the stack trace (return addresses) at the time was:

20007117 [System.pas][System][System.@NewUnicodeString][18313]
200067E8 [System.pas][System][System.@UStrFromPWCharLen][17197]
2009E26F [Controls.pas][Controls][Controls.TControl.GetText][5554]
270036
2005973A [StdCtrls.pas][StdCtrls][StdCtrls.TCustomCombo.Change][3570]
20059607 [StdCtrls.pas][StdCtrls][StdCtrls.TCustomCombo.CNCommand][3528]
2009FA05 [Controls.pas][Controls][Controls.TControl.WndProc][6642]
77608153 [RtlUnlockHeap]
77608153 [RtlUnlockHeap]
77608153 [RtlUnlockHeap]
77608153 [RtlUnlockHeap]

The block was previously used for an object of class: TChangeLink

The block is currently used for an object of class: Unknown

The allocation number is: 77689

The block was previously freed by thread 0x818, and the stack trace (return addresses) at the time was:

20004245 [System.pas][System][System.TObject.FreeInstance][9810]
200047B9 [System.pas][System][System.@ClassDestroy][10632]
200B0D18 [ImgList.pas][ImgList][ImgList.TChangeLink.Destroy][1555]
2000428B [System.pas][System][System.TObject.Free][9829]
2005B9AE [StdCtrls.pas][StdCtrls][StdCtrls.TCustomButton.Destroy][4796]
200A146C [Controls.pas][Controls][Controls.TWinControl.Destroy][7737]
200B69B5 [Forms.pas][Forms][Forms.TScrollingWinControl.Destroy][2644]
200B78EE [Forms.pas][Forms][Forms.TCustomForm.Destroy][3246]
2000428B [System.pas][System][System.TObject.Free][9829]
200BCC25 [Forms.pas][Forms][Forms.TCustomForm.CMRelease][6249]
2009FA05 [Controls.pas][Controls][Controls.TControl.WndProc][6642]

The current thread ID is 0x818, and the stack trace (return addresses) leading to this error is:

405789 [System.pas][System][System.@LStrFromPWCharLen][14467]
270036
2005973A [StdCtrls.pas][StdCtrls][StdCtrls.TCustomCombo.Change][3570]
20059607 [StdCtrls.pas][StdCtrls][StdCtrls.TCustomCombo.CNCommand][3528]
2009FA05 [Controls.pas][Controls][Controls.TControl.WndProc][6642]
77608153 [RtlUnlockHeap]
77608153 [RtlUnlockHeap]
77608153 [RtlUnlockHeap]
77608153 [RtlUnlockHeap]
765E491D [LocalUnlock]
765E4933 [LocalUnlock]

Current memory dump of 256 bytes starting at pointer address 7EE676F0:

B0 04 02 00 00 00 00 00 02 00 00 00 31 00 32 00 00 00 17 10 FB 42 80 80 00 00 00 00 D0 14 E6 7E
00 00 00 00 00 00 00 00 F4 CD 00 20 00 00 00 00 A5 1F 01 00 4E 33 00 20 27 42 00 20 6E 47 00 20
5C 42 00 20 D1 B3 02 20 23 C7 09 20 4D 26 0A 20 01 27 0A 20 91 E1 09 20 E2 82 0A 20 E5 D1 09 20
18 08 00 00 18 08 00 00 6A 33 00 20 F0 83 00 20 97 BF 01 20 31 BF 01 20 96 23 03 20 6F 17 03 20
A6 11 03 20 E2 82 0A 20 88 11 03 20 4A D4 09 20 BA 15 0A 20 14 00 00 00 00 00 00 00 01 74 57 5F
90 85 02 20 B0 70 E6 7E 02 00 00 00 04 00 00 00 00 00 00 00 FE 8B A8 A0 00 00 00 00 D0 14 E6 7E
00 00 00 00 00 00 00 00 F4 CD 00 20 00 00 00 00 B0 D2 00 00 4E 33 00 20 17 71 00 20 E8 67 00 20
CA 6E 00 20 3B 2E 01 20 1D 3D 10 20 85 07 1F 20 D2 18 89 76 12 BF 1E 20 D6 F1 10 20 4A F6 10 20

° . . . . . . . . . . . 1 . 2 . . . . . û B € € . . . . Ð . æ ~
. . . . . . . . ô Í . . . . . ¥ . . . N 3 . ' B . n G .
\ B . Ñ ³ . # Ç . M & . .
'  . ‘ á . â ‚ . å Ñ .
. . . . . . . . j 3 . ð ƒ . — ¿ . 1 ¿ . – # . o . .
¦ . . â ‚ . ˆ . . J Ô . º . . . . . . . . . . . t W _
… . ° p æ ~ . . . . . . . . . . . . þ ‹ ¨ * . . . . Ð . æ ~
. . . . . . . . ô Í . . . . . ° Ò . . N 3 . . q . è g .
Ê n . ; . . . = . … . . Ò . ‰ v . ¿ . Ö ñ . J ö .
---------------------------
OK
---------------------------
Ich habe seit einigen Tagen den externen FastMM installiert.

Wenn ich während des debuggens per MouseOver den Inhalt eines TCombobox.Text sehen will oder auch per Evaluate/Modify-Fenster entsprechende Property evaluieren will, kommt oben stehende Fehlermeldung.
Trotz jener Fehlermeldung, steht im Evaluate/Modify-Fenster der richtige Wert.

Anfangs steht ja: "Check your memory manager sharing settings".
Auf was soll ich da mein Augenmerk richten?

Der zweite Call Stack ("The block was previously freed...") ist auch jedes Mal anders. Ebenso die Block Size am Anfang der Fehlermeldung!
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.173 Beiträge
 
Delphi 10.4 Sydney
 
#2

AW: FastMM Memory Error Detected beim Debuggen

  Alt 8. Aug 2012, 13:37
Was meinst du mit installiert? In der IDE installiert oder im Programm eingebunden?
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.062 Beiträge
 
Delphi 10.4 Sydney
 
#3

AW: FastMM Memory Error Detected beim Debuggen

  Alt 8. Aug 2012, 13:43
Was meinst du mit installiert? In der IDE installiert oder im Programm eingebunden?
So:
http://stackoverflow.com/questions/1...ce-from-fastmm

Zitat:
The internal Delphi version of FastMM doesn't support stack traces.

If you want to log the memory leak stack traces, you have to:

download the FastMM library
include it as the first unit in your project:

program YourProject;
uses
FastMM4,
SysUtils,
Forms,
...

enable the FullDebugMode in FastMM4Options.inc
set Map file to Detailed in the linking project options (the FastMM_FullDebugMode.dll processes the .map file)
add the FastMM_FullDebugMode.dll in your binary (or Windows System32) directory
Und in allen DPRs gleich nach dem begin ReportMemoryLeaksOnShutdown := DebugHook <> 0; reingeschrieben.
Zum Konfigurieren der FastMM4Options.inc habe ich den GUI-Editor von Jeremy North genutzt.
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.062 Beiträge
 
Delphi 10.4 Sydney
 
#4

AW: FastMM Memory Error Detected beim Debuggen

  Alt 8. Aug 2012, 13:54
Es scheint generell ein Problem für Instanzen mit String-Properties zu sein.
Es tritt ständig auf.
Ich halte den Mauszeiger über entsprechende Property, es kommt kurz als Hint "Evaluate..." und dann kommt die bildschirmfüllende Meldung.
  Mit Zitat antworten Zitat
TiGü

Registriert seit: 6. Apr 2011
Ort: Berlin
3.062 Beiträge
 
Delphi 10.4 Sydney
 
#5

AW: FastMM Memory Error Detected beim Debuggen

  Alt 9. Aug 2012, 12:43
Hätte denn jemand eine Idee, welche FastMM-Option eingestellt werden müsste, um dieses schon recht nervige Verhalten abzustellen?
  Mit Zitat antworten Zitat
Iwo Asnet

Registriert seit: 11. Jun 2011
313 Beiträge
 
#6

AW: FastMM Memory Error Detected beim Debuggen

  Alt 9. Aug 2012, 12:51
Zitat:
An attempt has been made to free/reallocate a block that was allocated through a different FastMM instance. Check your memory manager sharing settings.
Irgendwas is da doppelt bei Dir, z.B. verschiedene FastMM-DLL in den Verzeichnissen, oder Du verwendest selber DLLs etc.
  Mit Zitat antworten Zitat
Antwort Antwort


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 06:02 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