Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 19.10.2010, 23:16   #1
Smagulov85
Форумчанин
 
Аватар для Smagulov85
 
Регистрация: 22.11.2009
Сообщений: 142
По умолчанию копирование файлов и папок

не могу сюда свой ProgressBar1 вставить, а он нужен
стандартное окно отключл сам
Код:
procedure TForm1.Button1Click(Sender: TObject);
  var
  OpStruc: TSHFileOpStruct;
  frombuf, tobuf: array [0..128] of Char;
x,y:string;
begin
x:='\\server\client\Client';//откуда;
y:='C:\id1\';//куды;
   FillChar( frombuf, Sizeof(frombuf), 0 );
  FillChar( tobuf, Sizeof(tobuf), 0 );
  StrPCopy( frombuf, x );
  StrPCopy( tobuf, y);
  with OpStruc do
  begin
    Wnd:= Handle;
    wFunc:= FO_COPY;
    pFrom:= @frombuf;
    pTo:=@tobuf;
    fFlags:= FOF_NOCONFIRMMKDIR or FOF_NOCONFIRMATION or FOF_SILENT;
    fAnyOperationsAborted:= False;
    hNameMappings:= nil;
    lpszProgressTitle:= nil;
  end;
  ShFileOperation( OpStruc );
 
end;
не копирует папки выдает ошибки на них

Код:
procedure TForm1.Button2Click(Sender: TObject);
Var SR:TSearchRec;
    FindRes:Integer;
    i, r: string;
   Retour: LongBool;
begin
ListBox1.Clear;
i:=''; // откуда
r:=''; // куда
 
FindRes:=FindFirst(i+'*.*',faAnyFile,SR);
While FindRes=0 do
   begin
      if ((SR.Attr and faDirectory)=faDirectory) and // если найденный элемент каталог и
      ((SR.Name='.')or(SR.Name='..')) then // он имеет название "." или "..", тогда:
         begin
            FindRes:=FindNext(SR); // продолжить поиск
            Continue; // продолжить цикл
         end;
      ListBox1.Items.Add(SR.Name);
       Retour := False;
       if not  CopyFileEx(pchar(i+SR.Name), pchar(r+SR.Name),@CopyCallBack,ProgressBar1,@Retour,COPY_FILE_RESTARTABLE)
    then ShowMessage(IntToStr(GetLastError));
      FindRes:=FindNext(SR);
 
   end;
FindClose(SR);
end;
Если помог: Нажми Весы и оставь отзыв!!!
Smagulov85 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Копирование папок McBodik Общие вопросы C/C++ 0 24.05.2010 19:37
поиск файлов и папок FAiver Общие вопросы Delphi 13 09.04.2009 18:01
Отображение скрытых файлов и папок и отображение розширения всех файлов beegl Общие вопросы Delphi 10 14.12.2008 22:02
копирование папок!!!hELP 80971815772 Общие вопросы C/C++ 1 03.03.2007 23:07