Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Основная";
Текущий архив: 2002.02.07;
Скачать: [xml.tar.bz2];

Вниз

Как подцепить в процедуру копирования файла 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;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.44 MB
Время: 0.004 c
1-18903
Ольга
2002-01-22 17:18
2002.02.07
Delphi 6


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


1-18892
SergeiSSG
2002-01-23 18:13
2002.02.07
Записать в bmp из PaintBox?


3-18762
Olfi
2002-01-12 10:34
2002.02.07
Как округлить число в таблице(TQuery) после деления?


4-19031
REL
2001-12-10 13:49
2002.02.07
Модем.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский