Показать сообщение отдельно
  #1  
Старый 17.06.2008, 19:52
Аватар для ZIP
ZIP ZIP вне форума
Прохожий
 
Регистрация: 15.06.2008
Адрес: Россия, под Казанью
Сообщения: 39
Репутация: 10
По умолчанию Как привязать ПрогрессБар к копированию файлов?

Помогите ламеру, скажите, как сделать так, что бы прогресс бар отображал ход копирования папок с файлами (включая подкаталоги).
Я вот попоробовал добавить ПрогрессБар к исходнику "Copy Files" и не смог.

Вот его код:
Код:
procedure TForm1.Button1Click(Sender: TObject);
Label M;
var
 OpStruc:TSHFileOpStruct;
 frombuf,tobuf:array[0..128] of Char;
 Dir1,Dir2,s:string;
begin
 SelectDirectory('Просмотр каталога',Dir1,Dir2);
 if Dir2='' then goto M;
 FillChar(frombuf, Sizeof(frombuf), 0);
 FillChar(tobuf, Sizeof(tobuf), 0);
// s:='';
 StrPCopy(frombuf, 'd:\games');
 StrPCopy(tobuf, Dir2);
 with OpStruc do
  begin
   Wnd:=Handle;
   wFunc:=FO_COPY;
   pFrom:=@frombuf;
   pTo:=@tobuf;
   fFlags:=FOF_NOCONFIRMATION or FOF_RENAMEONCOLLISION;
   fAnyOperationsAborted:=False;
   hNameMappings:=nil;
   lpszProgressTitle:=nil;
  end;
 ShFileOperation(OpStruc);
M:
end;

Да, и если нетрудно, скажите заодно, как узнать сколько файлов скопировано, сколько осталось и как получить все это счастье в текстовом формате, и можно ли к
Код:
   fFlags:=FOF_NOCONFIRMATION or FOF_RENAMEONCOLLISION;
добавить флаг FOF_SLINET и другие, не потеряв при этом FOF_NOCONFIRMATION и FOF_RENAMEONCOLLISION?

Заранее спасибо.
Ответить с цитированием