Тут потребовалось реализовать копирование файлов с отображением процесса копирования отдельного файла на progressbar`e. Пошукав в закромах родины нашел примерчик
- Код: Выделить всё
- function MyCopyFile(FromFile, ToFile: TFileName): Boolean;
 var
 FromStream, ToStream: TFileStream;
 buff : integer;
 begin
 Result := True;
 if not FileExists(FromFile) then begin
 Result := False;
 Exit;
 end;
 buf := 64;
 FromStream := TFileStream.Create(FromFile, fmRead);
 try
 ToStream := TFileStream.Create(ToFile, fmCreate);
 try
 //ProgressBar1.Max := FromStream.Size;
 while ToStream.Size < FromStream.Size do begin
 ToStream.CopyFrom(FromStream, buff);
 //сдесь чё-нить с прогрессом делаем (увеличиваем)
 //Application.ProcessMessages;
 end;
 finally
 ToStream.Free;
 end;
 finally
 FromStream.Free;
 end;
 end;
Данный пример вполне отвечает поставленной задаче. Но вопрос все-таки возник - экспериментально выявлено, что при увеличении значения переменой buff - увеличивается скорость копирования.
Так вот, как узнать максимальный размер буфера, который можно задать?
Целевая платформа - linux, х86






