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

Вниз

Переместить папку   Найти похожие ветки 

 
v2k ©   (2002-07-05 19:07) [0]

Люди добрые поможите, надо переместить папку со всем содержимым , и отображать процесс перемещения прогрессбаром как это менее геморойно сделать?


 
Skier ©   (2002-07-05 19:19) [1]

>v2k
Это не поможет ?
http://delphi.mastak.ru/cgi-bin/faq.pl?look=1&id=988622373&n=15


 
v2k ©   (2002-07-05 19:35) [2]

неа малнько не то
1) способ идеально подходит , но он только для одного файла к нему бы еще много чего пределывать а) найти все файлы и папки замерить размер както высчитать общий размер ну вобщем ещё куча гемороя
2) Во второй я вообще неврубился , но он вроде тоже для одного файла
3)Вариант хороший , но как нибудь бы скрыть его диалоговое окно и завесть переменную в какторой узнавать чем он там занимается, чтоб сделать свой прогресс бар, а может такая и есть я просто не знаю?


 
TTCustomDelphiMaster ©   (2002-07-05 19:45) [3]

uses ShellApi;
{$R *.DFM}

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:\DownLoad\1.ZIP") + 1;
//p := StrECopy(p, "C:\DownLoad\2.ZIP") + 1;
//p := StrECopy(p, "C:\DownLoad\3.ZIP") + 1;
//StrECopy(p, "C:\DownLoad\4.ZIP");
StrECopy(p, "C:\Dream");
FillChar(Fo, sizeof(Fo), #0);
Fo.Wnd := Handle;
Fo.wFunc := FO_COPY; // FO_DELETE FO_MOVE FO_RENAME
Fo.pFrom := @Buffer;
Fo.pTo := "D:\";
Fo.fFlags := 0;
if ((SHFileOperation(Fo) <> 0) or
(Fo.fAnyOperationsAborted <> false)) then
ShowMessage("Cancelled")
end;

PS: буфер, содержащий имена файлов для копирования должен заканчиваться двумя нулевыми символами


 
v2k ©   (2002-07-05 19:49) [4]

не тут другая проблемма я понятия неимею чего в той папке которую буду копировать


 
TTCustomDelphiMaster ©   (2002-07-05 20:32) [5]


> v2k © (05.07.02 19:49)


Дык я тоже не имею понятия. Я ж всю папку полностью копирую

> StrECopy(p, "C:\Dream");
> Fo.pTo := "D:\";


Копирует папку Dream со всеми потрахами, показывая стандартное окно копирования с прогресбаром, летающими листочками и прочей лабудой



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

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

Наверх




Память: 0.48 MB
Время: 0.012 c
1-58073
x2y
2002-07-08 09:28
2002.07.18
Мастера, помогите плз,


3-57933
kolonist2
2002-06-25 12:50
2002.07.18
Как создать в Делфи БД (не псевдонимб а именно БД)


1-58047
nitro313
2002-07-08 03:21
2002.07.18
Мастаки помогите! Не могу сам дойти...


1-58122
Flagman
2002-07-08 22:19
2002.07.18
Русский язык в InstallAnywhere v4.01 Enterprise Edition


1-58068
werr
2002-07-05 17:04
2002.07.18
Как узнать каким юзером занят файл?