Wie schaut die Struktur der "PHistoryTreeData" aus?
"FDateiname" und "FDateipfad" sollten für
Unicode als Widestring definiert sein (<Delphi09), welche du dann so auch abspeichern/laden kannst.
Edit:
Die zu lesende Größe stimmt dann auch nicht.
Wenn du den Widestring dann speichern/einlesen willst, solltest du wieder "SizeOf()" verwenden.