Hallo,
ich habe ein merkwürdiges Verhalten beim Ausführen meiner Anwendung.
Bei der Suche nach einem Memory Leak habe ich folgendes festgestellt.
2 Units (Fremdkomponente - ExpressNavBar), ich nenne sie mal UnitA und UnitB
haben einen initialization und finalization - Abschnitt.
Öffne ich Delphi, dann mein Projekt und starte dieses mit F9, so wird
erst initialization von UnitB, dann von UnitA ausgeführt. Das ist falsch und führt zu einem Speicherleck.
Wenn ich das Projekt komplett erzeugen lasse oder alle
dcu' s lösche, ist es genau andersrum.
Also, erst initialization von UnitA, dann von UnitB. Da dann auch finalization in der beabsichtigten Reihenfolge ausgeführt wird, gibt es kein Memory Leak.
Jetzt kann ich auch mit F9 starten und Alles ist OK.
Wenn ich aber einmal mein Projekt schliesse und wieder öffne, ist die Reihenfolge wieder falsch, bis ich wieder einmal das Projekt erzeuge.
Jetz habe ich versucht, das Verhalten so zu beeinflussen, dass UnitA immer vor UnitB geladen wird, indem ich sie in die Uses meines MainForms ganz vorn gesetzt habe. Aber es interessiert Delphi nicht.
Was kann ich tun bzw. wo kann ich noch suchen?
Habe Delphi 7 Pro im Einsatz.
Gruß, Frank