Einzelnen Beitrag anzeigen

Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
43.152 Beiträge
 
Delphi 12 Athens
 
#14

AW: PostMessage: Objekte "verschicken" führt zu Access Violation

  Alt 4. Mär 2011, 13:28
Davon ging ich aus. Aber aus irgendeinem Grund scheint das Objekt nicht mehr zu existieren. Daher meine Befürchtung, dass genau der Speicherbereich aufgeräumt oder überschrieben wurde.
Deine Variable, auf die du zugreifen wolltest, war ja wirklich weg, also stimmte der Fehler schon.

Bei PostMessage müßte man eventuell nochaufpassen, daß der MessageQueue nicht überläuft.
Sind zuviele unverarbeitete Messages vorhanden, dann wird deine Message nicht eingetragen und keiner gibt mehr das Objekt frei.
Delphi-Quellcode:
if not PostMessage(..., LPARAM(x)) then begin
  x.Free;
  // und eventuell noch eine Fehlermeldung
end;
PS: Irgendein "Idiot" hat beschlossen, daß Integer nicht mehr mitwächst, also unter 64 Bit bleibt das Ding 32 Bit klein.
Also nimm' lieber den direkten Typen für den lParam-Parameter.
Garbage Collector ... Delphianer erzeugen keinen Müll, also brauchen sie auch keinen Müllsucher.
my Delphi wish list : BugReports/FeatureRequests

Geändert von himitsu ( 4. Mär 2011 um 13:30 Uhr)
  Mit Zitat antworten Zitat