Сегодня я заметил, что в D2009 (с обновлением 1) TStringStream.ReadString больше не перемещает позицию в потоке, как это было до D2007.
.
Таким образом, цикл MyStringStream.ReadString (10) всегда будет читать первые 10 символов потока вместо того, чтобы двигаться дальше и получать весь поток 10 символов на 10 символов.
Я проверил документ, он все еще говорит, что ReadString должен переместить позицию ...
Может ли кто-нибудь подтвердить, является ли это ошибкой в коде D2009 или было изменение дизайна (и почему), и документ устарел?
Спасибо...
Обновление: проблема обнаружена в QC# 68582





Определенно ошибка и уродливая поломка совместимости. Если вы проверите Classes.pas, вы увидите Unicode и не-Unicode версию ReadString. Версия, отличная от Unicode, увеличивает FPosition, а Unicode - нет. И исходный D2009, и обновление 1 ведут себя одинаково.
Сообщите об этом в КК.
Не нашел. Создал новый: # 68582