Delphi+absturz

Wenn ich mit delphi mein programm ein paar mal gestartet habe stürzt mein Computer ab.
Kann das daran liegen, dass ich mal eine Variable, die ich mit create erzeugt habe, nicht mit free geschlossen habe und dadurch der Arbeitsspeicher voll wird???

Danke
Mario

Für alles, das nicht TApplication gehört bist du verantwortlich, also ja.

Das gilt aber auch für Objekte bzw. Speicher der mit New und GetMem oder MemAlloc usw. angefordert wurde.

Kann das daran liegen, dass ich mal eine
Variable, die ich mit create erzeugt
habe, nicht mit free geschlossen habe und
dadurch der Arbeitsspeicher voll wird???

Bitte naehere Informationen. Wie stuerzt der Computer ab? Geht Strg+Alt+Entf nachher noch, System ausgelastet, Schutzverletzung??? Was fuer eine Delpih-Version verwendest Du???

Es ist eigentlich so nicht moeglich den Arbeitspeicher voll zu machen, weil der Speicher wieder freigegeben wird, sobald das Programm beenden wird (NICHT mit Delphi 1), ausser Du verwendest spezielle API-Funktionen, vorallem bei Verwendung mancher IPC-Funktionen kann bei Programmbeendigung mit Strg+F2 im Delphi zu Problemen kommen.

Delphi4 hat bei groesseren Projekten Probleme mit den DSK-Dateien. Diese Dateien loeschen (Projektname.dsk) und das in den Optionen eventuell abschalten.

Das bedeutet also wenn ich z.B. eine TStringlist mit create erzeuge muss ich diese auch wieder mit free schliessen, sonst bleibt der speicherplatz belegt oder wie?

Danke
Mario

Delphi+absturz+antw
Ich benutze Delphi 3. Ich starte das Programm und öffne als MDIChild ein Fenster mit einer TListview. Das Fenster wird erzeugt und das TListview wird angezeigt aber die Scrollbar nicht mehr. Dann bleibt der Rechner einfach hängen. Nach STRG-ALT-ENTF kann ich das programm schliessen, aber nach dem Klick auf Task beenden bleibt er ganz hängen.

Rien ne va plus!!!

Danke
Mario

Ja. Sonst gibt’s ein Memory-Leak, da Windows denkt, dieser Speicher gehöre noch jemanden. Solche Sachen stehen übrigens im OOP-Kapitel der Object Pascal Referenz.

Nur, solange das Programm gestartet ist, wenn das Programm beendet wird, wird auch der Speicher freigegeben.

Wenn man ein Programm mit Strg+Alt+Entf beendet, das vom Delphi aus gestartet wurde, ist ein Absturz nichts besonderes, weil das Delphi damit Probleme hat.

Hast Du Dir schon mal ueberlegt, dass Du die ListBox vielleicht in einer Endlosschleife fuellst? Kannst Du nicht zurueck zum Delphi gehen und dort auf „Pause“ klicken?

Es geht garnichts mehr außer STRG+ALT+ENTF! Und eine Endlosschleife ist es auch nicht, da ich es ja ein paar mal in der selben reihenfolge probiere.

Mario