Ну, как сохранить строки из стринглиста - это понятно и работает. А как правильно сохранить в стрим (или файл) "приаттаченные" к стринглисту объекты? TStringList.SaveTo*() сохраняет, как и написано в FM, только данные самого списка, но не привязанные к строкам объекты.
В каком направлении посоветуете копать?