Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.02.07;
Скачать: CL | DM;

Вниз

Как подцепить в процедуру копирования файла ProgressBar...   Найти похожие ветки 

 
Reals ©   (2002-01-21 19:53) [0]

Здравствуйте!
Имееться процедура для копирования файла из файла-ресурса:

procedure CreateFileFromResource(ResourceName, FileName: String);
var
ResourceStream: TStream;
FileStream: TStream;
begin
ResourceStream := TResourceStream.Create(hInstance, ResourceName, RT_RCDATA);
try
FileStream := TFileStream.Create(FileName, fmCreate or fmShareDenyWrite);
try
FileStream.CopyFrom(ResourceStream, 0);
finally
FileStream.Free;
end;
finally
ResourceStream.Free;
end;
end;


Процедура запускаеться для каждого копируемого файла отдельно.
Подскажите пожалуйста, как можно вставить индикатор прогрессбара, чтобы было видно сколько скопировалось.
Очень надо.

P.S. Может кто подскажет другой лучший вариант, как скопировать файлы, конечно же с использованием ProgressBar`a.

Заранее благодарен.


 
~Sergius~~~   (2002-01-21 21:26) [1]

Обычно как делается? А делается так.
Заголовок процедуры пишется таким образом (применимо к вашему случаю):

procedure CreateFileFromResource(ResourceName, FileName: String; PB: TProgressBar);

Внутри процедуры высчитываются проценты (или что там), и дается PB.Value=XXX. Т.е., в процедуру передается ссылка на твой прогресс бар.
НО! В данном случае -- это всего лишь общие рассуждения, поскольку, чтобы знать проценты, нужно самому копировать файл, а не использовать функции, которые делают это за тебя.

Выходит, нужно написать свою процедурку копирования через BlockRead/BlockWrite - очень просто делается.



Страницы: 1 вся ветка

Текущий архив: 2002.02.07;
Скачать: CL | DM;

Наверх




Память: 0.47 MB
Время: 0.008 c
7-19008
Poroh
2001-10-24 02:57
2002.02.07
Подскажите, пожалуйста, как перехватить сообщение о том, что программа выполнила недопустимую операцию и будет закрыта.


1-18864
VID
2002-01-22 11:43
2002.02.07
Передача и ПОЛУЧЕНИЕ команд от одной проги к другой.


1-18917
Andrews
2002-01-24 12:08
2002.02.07
Помогите решить проблему


3-18729
Rub
2002-01-09 17:28
2002.02.07
Пробую программно изменить пароль доступа к БД...


14-18991
Sir Alex
2001-12-14 19:59
2002.02.07
Новый клиент DMFC 1.0.005a + Исходники