Wenn die log-Datei aufgetaucht ist, enthält sie auch Callstacks. Ich nehm hier mal ein Beispiel aus einem alten Log, das ich hier noch nicht ordentlich weggesäubert hab:
Zitat:
Stack trace of when the object was allocated (return addresses):
402E7E [System][@GetMem]
403EC7 [System][TObject.NewInstance]
404172 [System][@ClassCreate]
403EFC [System][TObject.Create]
465615 [..\..\pkFileSysWin.pas][pkFileSysWin][WindowsFindFileList][136]
465B3F [..\..\pkFileSysWin.pas][pkFileSysWin][WindowsFindFileList][214]
46618F [..\pkFileSysWinTest.pas][pkFileSysWinTest][pkFileSysWinTestExecute][50]
466979 [..\pkFileSysWinTest.pas][pkFileSysWinTestDconsole][TestMain][107]
Datei, Funktion und Zeile lässt sich dort finden (von unten nach oben die Aufrufreihenfolge).
In diesem Beispiel ruft TestMain in Zeile 108 die Funktion pkFileSysWinTestExecute auf, welche in Zeile 50 WindowsFindFileList aufruft, welches in Zeile 214 WindowsFindFileList aufruft (overloaded), welches in Zeile 136 ein Objekt anlegt, das später nicht freigegeben wurde (weiter oben im Log wäre zu finden gewesen, daß es sich dabei im ein TStringList handelt).