Оригинальный DVD-ROM: eXeL@B DVD !
eXeL@B ВИДЕОКУРС !

ВИДЕОКУРС ВЗЛОМ
выпущен 10 декабря!


УЗНАТЬ БОЛЬШЕ >>
Домой | Статьи | RAR-cтатьи | FAQ | Форум | Скачать | Видеокурс
Новичку | Ссылки | Программирование | Интервью | Архив | Связь

БОЛЬШОЙ FAQ ПО DELPHI



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

Сначала в разделе uses объявляем модуль ShellAPI
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, ShellAPI;
Затем следующим образом обрабатываем нажатие кнопки:
procedure TForm1.Button1Click(Sender: TObject);
var
Fo : TSHFileOpStruct;
buffer : array[0..4096] of char;
p : pchar;
begin
FillChar(Buffer, sizeof(Buffer), #0);
p := @buffer;
p := StrECopy(p, 'C:\first.rar') + 1; //Начали подключение файлов, предназначенных для копирования
p := StrECopy(p, 'C:\second.rar') + 1;
p := StrECopy(p, 'C:\third.rar') + 1;
p := StrECopy(p, 'C:\5.rar') + 1;
p := StrECopy(p, 'C:\6.rar') + 1;
p := StrECopy(p, 'C:\7.rar') + 1;
FillChar(Fo, sizeof(Fo), #0);
Fo.Wnd := Handle;
Fo.wFunc := FO_COPY; //Действие
Fo.pFrom := @Buffer; //Источник
Fo.pTo := 'c:\1\'; //Назначение - показываем куда копируем
Fo.fFlags := 0;
if ((SHFileOperation(Fo) <> 0) or
(Fo.fAnyOperationsAborted <> false)) then
ShowMessage('Cancelled')
end;
Заметим, что в качестве действия мы указали константу FO_COPY - это значит, что решено копировать файлы, помимо этого значения можно также указывать:FO_COPY
FO_DELETE
FO_MOVE
FO_RENAME



<< ВЕРНУТЬСЯ В ОГЛАВЛЕНИЕ



Материалы находятся на сайте https://exelab.ru/pro/



Оригинальный DVD-ROM: eXeL@B DVD !


Вы находитесь на EXELAB.rU
Проект ReactOS