Einzelnen Beitrag anzeigen

sebl2002

Registriert seit: 19. Nov 2005
Ort: Bochum
2 Beiträge
 
Delphi 6 Professional
 
#1

Programm beenden und Speicher freigeben?

  Alt 29. Nov 2005, 16:49
Hallo Welt,

ich arbeite gerade an einem Bildschirmschoner, bei dem -unter anderem- über einen Timer JPEGs geladen werden. Mausbewegungen und Tastatureingaben fange ich über Application.OnMessage ab, die ich in FormActivate in eine eigene Prozedur umleite. Bei einem Maus- oder Tastaturevent beende ich die Anwendung mit Application.Mainform.Close. In FormClose wird der reservierte Speicher wieder freigegeben.

Wenn ein solches Event zum Zeitpunkt der Speicherzuweisung oder dem Laden des JPEGs auftritt, bekomme ich eine EAccessViolation. Sofern ich das Programm mit Application.Terminate schließe, kommt dieser Fehler nicht, dafür wird mein Arbeitsspeicher immer ein bisschen weniger.

Wie kann ich es vermeiden, dass das Programm geschlossen wird, wenn der Timer aktiv geworden ist? Hat jemand eine elegante Idee dazu?

Vielen Dank für eure Hilfe!
  Mit Zitat antworten Zitat