Записываю образ флешки в файл блоками по 512 кб. (Лазарус под Linux)
- Код: Выделить всё
for i := 1 to Count do begin
BlockRead (Fi, Bf[0], BlockSize, Sz); //читаем блок из файла
if Sz = 0 then break; //кончилось чтение
BlockWrite(Fo, Bf[0], Sz, Wr); //пишем блок
end;
В разделе диска доступно 17 Гб из 30. Файл (флешка) размером 1 Гб пишется без проблем. Запись файла 8 Гб останавливается на 4,2 Гб с сообщением Disc full.
На другой машине доступно 44 Гб, при записи 16 Гб останавливается на 11,9 Гб с сообщением Disc full.
Кто виноват и что делать?