laz847 hat geschrieben:Das Programm endet nachdem der Fortschrittsbalken 100% erreicht hat.
Ups, was macht denn Dein Programm in diesem Moment, also bei 100%, was ist der nächste Schritt?
Mach Dir doch mal ein paar Ausgaben in ein Logfile (oder nutze den Debugger, Breakpoints) um genauer zu sehen wo und und an welcher Stelle es nicht mehr weitergeht.
Ich habe mal alle Schritte nach dem Laden geloggt und das Programm stuerzt dann beim Aufbau des Bildschrims ab.
Genauer, es werden Koordinaten berechnet des anzuzeigenden Bildschirmausschnitts und ein nur zur Berechnung noetiges Object wird dann wieder freigegeben.
Dabei 'haengt' dann das Programm. Ich kann vor dem Freigeben auf alle Properties des Objects zugreifen - ohne dass es zu einem Crash kommt.
laz847 hat geschrieben:
Weiterhin könntest Du in den Projekteinstellungen Debuginfos + Prüfungen aktivieren, nur um zu sehen ob nicht andere Fehler da mit rein spielen.
Ich versuche es noch mal, habe aber schon alles ausprobiert, was mir sinnvoll erschien.
laz847 hat geschrieben:
Warum sich das aber nur auswirkt wenn Du heaptrc drin hast ist mir schleierhaft, da brauchst Du wohl Hilfe von den Vollprofis hier, hat keiner eine Idee?
Ja, waere nett. Womit ich noch keine Erfahrung habe sind die Einstellungen fuer den Heap bei den Projektoptionen.
Vielleicht muesste ich da einen entsprechenden Wert eingeben, damit der Debugger dann noch genug Speicher allozieren kann. Fragen ueber Fragen.
laz847 hat geschrieben:
Und wonach suchst Du mit heaptrc wenns eigentlich ohne Probleme läuft, steigt der Speicherverbrauch unerwartet an?
Naja, ich mache da ziemlich viel mit Pointern und dynamischen Listen und wollte eigentlich nur sichergehen, dass das Programm unter Lazarus/Linux genau so sauber laeuft wie unter Delphi/Win. Bislang habe ich mit Lazarus nur kleinere Testprojekte fuer meine eigenen Libraries gemacht und ein grosses Program (eben jenes) von Delphi nach Lazarus portiert.