В Delphi2009 и ново (так твое слишком), шнур будет отсутствие более длиной 1 байт в чарс, но множественные байты.
Так, пока
var
Удостоверение личности: Шнур [10];
Смотрит как блок 10 байт, оно не.
Так если вы делаете
aStream.Read (удостоверение личности [1], 10);
Вы читаете 10 байт в блоком будет более длинние после этого 10 байт. Результат что вы не знаете находится в остальноях блока. Будет вероятно некоторая гречиха в там интерпретирована как шнур когда вы пытаетесь положить ее в редактировать.