Einzelnen Beitrag anzeigen

Maekkelrajter

Registriert seit: 8. Mär 2017
Ort: Köln
118 Beiträge
 
Delphi 11 Alexandria
 
#14

AW: Speicher freigegeben?

  Alt 24. Jul 2018, 11:04
Außerdem kann ein Haltepunkt in InitUnits an der Stelle wo TProc(P)(); steht, helfen, zu sehen, welches die Units sind, die gerade initialisiert werden, dort einfach dann mit F7 reinspringen.
Das war der entscheidende Tip.
So konnte ich feststellen, dass vor dem 'initialize' von FasMM4.pas noch SHFolder.pas initialisiert wurde, weil SHfolder in der uses-Klausel im 'implementation'-Teil von FasMM4 aufgeführt ist. Da war es relativ leicht, (vorläufige) Abhilfe zu schaffen. Die 3 Deklarationen, die FastMM4 aus SHFolder benötigt, habe ich kurzerhand in FastMM4.pas eingefügt und SHFolder aus der uses - Liste entfernt. Schon war die Fehlermeldung verschwunden und FastMM lief, was sich auch (erwartungsgemäß) durch einen erheblichen Performanceverlust in der IDE bemerkbar machte.
Es ist mir allerdings ein Rätsel, wie FastMM in der Original-Fassung überhaupt irgendwo funktionieren kann??

Edit:
Die Lösung des Rätsels: FastMM4 hatte eine zufällig im Suchpfad liegende uralte Version von SHFolder.pas eingebunden. Nachdem ich den alten Mist samt .dcu entsorgt hatte, klappte alles ohne Änderung. Nunmehr wird die aktuelle WinAPI.ShFolder.pas eingebunden, und damit läuft's nun!

Geändert von Maekkelrajter (24. Jul 2018 um 13:04 Uhr)
  Mit Zitat antworten Zitat