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

Вниз

Копирование папки   Найти похожие ветки 

 
F@T@L_Err0r   (2008-04-08 09:42) [0]

Здравствуйте ув. Мастера...У меня такой вопрос: С помощью какой функции можно скопировать папку со всем ее содержимым???


 
Kolan ©   (2008-04-08 09:47) [1]

SHFileOperation


 
F@T@L_Err0r   (2008-04-08 10:04) [2]

var str:SHFILEOPSTRUCTA;
begin
str.Wnd := application.Handle;
str.wFunc := FO_COPY;
str.pFrom := "c:\Test\";
str.pTo := "D:\Test_New";
str.fFlags := FOF_ALLOWUNDO;
str.fAnyOperationsAborted := false;
SHFileOperation(str);

Выдает ошибку что невозможно прочитать с диска...


 
Kolan ©   (2008-04-08 10:16) [3]

> str.pFrom := "c:\Test\";
> str.pTo := "D:\Test_New";

А так

str.pFrom := "c:\Test\"+ #0;
str.pTo := "D:\Test_New"+ #0;

?


 
Kolan ©   (2008-04-08 10:17) [4]

> SHFILEOPSTRUCTA

Используй TSHFileOpStruct


 
clickmaker ©   (2008-04-08 11:53) [5]


> [4] Kolan ©   (08.04.08 10:17)
> > SHFILEOPSTRUCTA
>
> Используй TSHFileOpStruct

а какая разница?


> [2] F@T@L_Err0r   (08.04.08 10:04)

а там слэш не лишний на конце в pfrom?


 
Kolan ©   (2008-04-08 11:59) [6]

> а какая разница?

Никакой, просто объявление соотв Delphi оформлению.

Я пользуюсь такой реализацией вызова:
procedure CopyDirectoryTree(AHandle: THandle; AFromDir,
 AToDir: string);
var
 SHFileOpStruct: TSHFileOpStruct;
begin
 with SHFileOpStruct do
 begin
   Wnd := AHandle;
   wFunc := FO_COPY;
   {Про #0 не надо забывать.}
   pFrom := PChar(AFromDir+ #0);
   pTo := PChar(AToDir+ #0);
   fFlags := FOF_NOCONFIRMATION;
   fAnyOperationsAborted := False;
   hNameMappings := nil;
   lpszProgressTitle := nil;
 end;
 SHFileOperation(SHFileOpStruct);
end;


 
F@T@L_Err0r   (2008-04-08 12:31) [7]

var str:TSHFileOpStruct;
begin
str.Wnd :=Application.handle;
str.wFunc := FO_COPY;
str.pFrom := PChar("c:\Test\"+ #0);
str.pTo := PChar("D:\Test_New"+ #0);
str.fFlags :=FOF_NOCONFIRMATION;
str.fAnyOperationsAborted := False;
str.hNameMappings := nil;
str.lpszProgressTitle := nil;
SHFileOperation(str);
end;

Все та же ошибка...уже пробывал с разными параметрами...


 
Kolan ©   (2008-04-08 12:34) [8]

> PChar("c:\Test\"+ #0);

Когда ты используешь константные строки прифодит к PChar не нужнно.

Ты [5] проверил?


 
{RASkov} ©   (2008-04-08 12:38) [9]

> [7] F@T@L_Err0r   (08.04.08 12:31)

См [5]


 
F@T@L_Err0r   (2008-04-08 12:59) [10]

Все спасибо работает....



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

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

Наверх




Память: 0.49 MB
Время: 0.014 c
2-1207761012
Dark
2008-04-09 21:10
2008.05.04
PageControl


15-1206250033
Denis__
2008-03-23 08:27
2008.05.04
Photoshop


6-1185889040
keal
2007-07-31 17:37
2008.05.04
алгоритм работы сетевого чата на основе UDP


2-1207724584
ЛИЯ
2008-04-09 11:03
2008.05.04
как правильно задать фильтр


6-1184079238
nord12345
2007-07-10 18:53
2008.05.04
Возможно ли получить имя ПК в другой подсети?