Der Code zum Lesen der String-Var ist nicht ganz richtig. So ist es besser:
Delphi-Quellcode:
Stream.read(Len, SizeOf(Len));
SetLength(name, Len);
// Stream.read(name, Len); // <-- name ist nur ein Zeiger!
if (Len > 0) then
Stream.read(name[1], Len);
Gruß Hawkeye