Hi,
ich habe mal zum Spaß und aus Neugier
System.ReportMemoryLeaksOnShutdown := True;
gesetzt. Die Ausgabe erscheint mir jetzt nicht so wirklich hilfreich zu sein.
Was davon ist meine Schuld? Da taucht keine meiner Klassen oder Objekte auf, bis auf TDevPainter und TDevGrid...
Sherlock
Wenn Embacadero nicht in den neuen Versionen Mist gebaut hat, alles.
Am Beispiel TStringList:
gugg mal wo du die überall benutzt (auch komponenten, als Parameter usw).
ein Paradebeispiel für so ein Leak:
Delphi-Quellcode:
:
:
Procedure DoSomethingWithTheList(str:TStringList);
begin
:
str.append(format('Hajo...%d',[i]));
:
end;
begin
:
DoSomethingWithTheList(TStringList.create);
:
end;
Vielleicht noch als Tipp:
Da ich auch FastMM verwende, schalte ich den während der Entwicklung in den FullDebugMode (da sind
auch die Leaks mit dabei). Allerdings bekom ich halt auch ein Log-File, wo etwas mehr Infos drinn
stehen