Форум: "Основная";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];
ВнизКак осуществлять чтение прогресса копирования файла Найти похожие ветки
← →
Nikolas (2003-10-24 21:25) [0]Подскажите пожалуйсто! У меня есть здоровенный файл. При написании прги инсталятора мне нужно отображать прогресс копирования файла.
← →
Anatoly Podgoretsky (2003-10-24 21:34) [1]Делать это блока и после каждого блока корректировать позицию
← →
Sadya (2003-10-24 21:39) [2]А чем ИнсталлШилд стандартный не устраивает ?
← →
Dimaxx (2003-10-24 23:39) [3]var
FromF,ToF: file of byte;
NumRead,NumWritten: integer;
Buf: array[0..65535] of byte;
begin
if OpenDialog1.Execute then { Display Open dialog box }
begin
AssignFile(FromF,OpenDialog1.FileName);
Reset(FromF);
if SaveDialog1.Execute then { Display Save dialog box}
begin
AssignFile(ToF,SaveDialog1.FileName); { Open output file }
Rewrite(ToF);
Canvas.TextOut(10,10,"Copying "+IntToStr(FileSize(FromF))+" bytes...");
ProgressBar1.Position:=0;
repeat
BlockRead(FromF,Buf,sizeof(Buf),NumRead);
BlockWrite(ToF,Buf,NumRead,NumWritten);
ProgressBar1.Position:=ProgressBar1.Position+NumWritten;
Application.ProcessMessages;
until (NumRead=0) or (NumWritten<>NumRead);
CloseFile(FromF);
CloseFile(ToF);
end;
end;
end;
← →
Dimaxx (2003-10-24 23:40) [4]Да, забыл сказать, что у прогрессбара задать свойство Max равным размеру копируемого файла.
← →
Юрий Федоров (2003-10-25 00:32) [5]ShFileOperation копирует файл с выводом стандартного прогресса из Windows (при установке соответствующих флагов)
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2003.11.13;
Скачать: [xml.tar.bz2];
Память: 0.45 MB
Время: 0.034 c