Es geht weder so einfach noch so schön, aber es geht.
- Leite alle zu serialisierenden Klassen von TComponent ab.
- Füge für alle zu serialiserenden Felder published Properties ein (*schüttel*).
- Deine Arrays musst du dafür AFAIK mit TCollections ersetzen.
- Read/WriteComponentRes oder TStream.Read/WriteComponent
@arbu man: Wäre eine Möglichkeit

...
[edit]
Und
XML ist es auch nicht.
[/edit]