AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Programmieren allgemein BDS2006 - FastMM - ReportMemoryLeaksOnShutdown
Thema durchsuchen
Ansicht
Themen-Optionen

BDS2006 - FastMM - ReportMemoryLeaksOnShutdown

Ein Thema von Alex_ITA01 · begonnen am 5. Jul 2006 · letzter Beitrag vom 6. Jul 2006
Antwort Antwort
Seite 1 von 2  1 2      
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#1

BDS2006 - FastMM - ReportMemoryLeaksOnShutdown

  Alt 5. Jul 2006, 12:36
Hallo erstmal,
ich habe herausgefunden, dass mir Delphi ein Report über Speicherlecks beim Beenden der Anwendung anzeigt (ReportMemoryLeaksOnShutdown := True).
Kennst sich damit jemand aus?
Ich würde gerne näheres dazu erfahren weil dort eine Menge Adressen stehen und ich nicht weiß, wo ich anzufangen habe zu suchen
Wäre nett wenn jemand dazu etwas sagt.
MFG Alex
Let's fetz sprach der Frosch und sprang in den Mixer
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

Re: BDS2006 - FastMM - ReportMemoryLeaksOnShutdown

  Alt 5. Jul 2006, 12:44
Hab mir das im BDS zwar auch noch nicht angesehn, aber (ich vermute mal) theoretisch sollten es die Adressen der Codestellen (Befehle) sein, welche den Speicher (welcher nicht freigegeben wurde) reserviert haben und dazu dann noch die Adresse der Speicherstellen selber.

Soweit ich das in FastMM-QuellCode erkennen konnte, kann man zusätlich noch einige ReportingTools in den FastMM integrieren, welche dann die Adressen in die Dateinamen und Zeilenummer umrechen täten.
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Benutzerbild von Ralf Kaiser
Ralf Kaiser

Registriert seit: 21. Mär 2005
Ort: Wuppertal
932 Beiträge
 
Delphi 10.3 Rio
 
#3

Re: BDS2006 - FastMM - ReportMemoryLeaksOnShutdown

  Alt 5. Jul 2006, 12:54
Zitat von Alex_ITA01:
Hallo erstmal,
ich habe herausgefunden, dass mir Delphi ein Report über Speicherlecks beim Beenden der Anwendung anzeigt (ReportMemoryLeaksOnShutdown := True).
Kennst sich damit jemand aus?
Ich würde gerne näheres dazu erfahren weil dort eine Menge Adressen stehen und ich nicht weiß, wo ich anzufangen habe zu suchen
Wäre nett wenn jemand dazu etwas sagt.
MFG Alex
Halli Hallo,

erstell dein Programm mal mit MAP-File (detailliert, auf der seite Projektoptionen/Linker). Danach sollten in der Log von FastMM die jeweiligen Quelltextstellen zu sehen sein an denen nicht freigegebene Objekte alloziert (erzeugt) wurden. Das macht dieses Logfile schon wesentlich "lesbarer".

Hoffe es hilft,
Ralf
Ralf Kaiser
  Mit Zitat antworten Zitat
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#4

Re: BDS2006 - FastMM - ReportMemoryLeaksOnShutdown

  Alt 5. Jul 2006, 13:20
ok Danke.
Das mit der MapFile werde ich mal testen.
MFG Alex
Let's fetz sprach der Frosch und sprang in den Mixer
  Mit Zitat antworten Zitat
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#5

Re: BDS2006 - FastMM - ReportMemoryLeaksOnShutdown

  Alt 5. Jul 2006, 13:28
Hallo,
eine Frage habe ich dann doch noch
Wo finde ich denn diese Map-File?
MFG Alex
Let's fetz sprach der Frosch und sprang in den Mixer
  Mit Zitat antworten Zitat
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#6

Re: BDS2006 - FastMM - ReportMemoryLeaksOnShutdown

  Alt 5. Jul 2006, 13:45
Hab sie gefunden
Danke schön

PS: Liegt im Projektverzeichnis

MFG Alex
Let's fetz sprach der Frosch und sprang in den Mixer
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

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

Re: BDS2006 - FastMM - ReportMemoryLeaksOnShutdown

  Alt 5. Jul 2006, 14:25
Ansonsten einfach mal ein par Zeilen der Infos zeigen, falls es dennoch nicht verständlich ist ... irgendwer wird da bestimmt noch was erkennen können ^^
Neuste Erkenntnis:
Seit Pos einen dritten Parameter hat,
wird PoSex im Delphi viel seltener praktiziert.
  Mit Zitat antworten Zitat
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#8

Re: BDS2006 - FastMM - ReportMemoryLeaksOnShutdown

  Alt 5. Jul 2006, 14:59
Hallo,
das Problem ist, dass es sich alles um selbstgeschriebene Kompos aus unserer Firma handelt, daher kein Source möglich...
Der Report von Delphi zeigt immer nur an z.B.

51 - 63 Bytes TStringList 1x

Mein Problem ist, da "er" keine richtigen Adressen anzeigt (nur Bytes 51-63) wo ich die Fehler im Sourcen suchen soll...
MFG Alex
Let's fetz sprach der Frosch und sprang in den Mixer
  Mit Zitat antworten Zitat
Benutzerbild von Bernhard Geyer
Bernhard Geyer

Registriert seit: 13. Aug 2002
17.197 Beiträge
 
Delphi 10.4 Sydney
 
#9

Re: BDS2006 - FastMM - ReportMemoryLeaksOnShutdown

  Alt 5. Jul 2006, 15:34
Im Report sollte auch noch ein Aufrufstack vorhanden sein wann diese Stringlist angelegt wurde. Nun mußt du suche wo diese Stringlist eigentlich freigegeben werden sollte und überprüfen ob dies auch geschieht.
Windows Vista - Eine neue Erfahrung in Fehlern.
  Mit Zitat antworten Zitat
Alex_ITA01

Registriert seit: 22. Sep 2003
1.115 Beiträge
 
Delphi 12 Athens
 
#10

Re: BDS2006 - FastMM - ReportMemoryLeaksOnShutdown

  Alt 5. Jul 2006, 15:54
Hallo Bernhard,
hier ist ein Screenshot des Reports, von einer ganz einfachen Anwendung wo nur im FormCreate eine StringListe initialisiert wird aber eben nicht freigegeben wird.
Ebenfalls habe ich in der Zip-Datei die Map-Datei angehangen die mir Delphi erstellt.

Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs;

type
  TForm1 = class(TForm)
    procedure FormCreate(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
    SL : TStringList;
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.FormCreate(Sender: TObject);
begin
  ReportMemoryLeaksOnShutdown := True;
  SL := TStringList.Create;
end;

end.
Vielleicht kannst du mir da weiter helfen.
MFG Alex
Miniaturansicht angehängter Grafiken
fehler_367.jpg  
Angehängte Dateien
Dateityp: zip project1_878.zip (64,3 KB, 17x aufgerufen)
Let's fetz sprach der Frosch und sprang in den Mixer
  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 02:53 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