Thema: Delphi TPersistent & Streaming

Einzelnen Beitrag anzeigen

Benutzerbild von Khabarakh
Khabarakh

Registriert seit: 18. Aug 2004
Ort: Brackenheim VS08 Pro
2.876 Beiträge
 
#6

Re: TPersistent & Streaming

  Alt 12. Apr 2006, 13:28
@EConvertError: Frag's Pferd, warum es keine direkte Möglichkeit für TPersistent gibt. WriteComponent ist zwar auf Komponenten (ComponentState usw. wird angepasst) ausgelegt, aber man hätte doch trotzdem eine Lightweight-Lösung einbauen können.
Zum Class-Hack: Hört sich schlimmer an, als es ist . WriteData, das von WriteComponent aufgerufen wird, schreibt den Namen der Klasse in den Stream (WriteStr) und ruft danach WriteProperties auf. Um auf die protected Methode zugreifen zu können, kannst du einfach von TWriter ableiten (ohne neue Member) und damit in der gesamten Unit auf protected Member zugreifen. In diesem Falle bietet es sich aber wohl eher an, der abgeleiteten Klasse einfach eine WritePersistent-Methode zu spendieren.

@shmia: So wie ich ihn verstanden habe, will er erst einmal das DFM-Streaming erkunden. Später wird er - wie du sagtest - sich von TFiler verabschieden und Get/SetXYZProp direkt ansteuern müssen (wobei man dafür gut TWriter.WriteProperties als Vorlage nehmen kann).
Sebastian
Moderator in der EE
  Mit Zitat antworten Zitat