У меня есть исходный код старого проекта, и мне нужно изменить мелочи, но у меня были большие проблемы из-за того, что для этого был только delphi 2010.
Определена запись:
bbil = record
path : string;
pos: byte;
nr: Word;
end;
позже это определение используется для чтения из файла:
b_bil: file of bbil;
pbbil: ^bbil;
l_bil : tlist;
while not(eof(b_bil)) do
begin
new(pbbil);
read(b_bil, pbbil^);
l_bil.add(pbbil);
end
Основная проблема заключается в том, что компилятор не принимает тип «строка» в записи, потому что он хочет «финализации» . Итак, я попытался заменить «строку» на «строку [255]» или «короткую строку». При этом приложение читает файл, но с неправильным содержимым.
У меня вопрос, как преобразовать старый «строковый» тип, с помощью которого файлы были записаны, в «новые» типы в Delphi 2010.
Я уже много пробовал, например, "{$ H-}". Добавление только одного символа в запись показывает, что файл правильный, потому что файл читается почти правильно, но усекается на один символ больше для каждого набора данных - длина lengthbyte + 255chars кажется правильной для определения, но shortstring не соответствует.