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

Вниз

ShFileOperation vs Long Names ???   Найти похожие ветки 

 
Sarge   (2003-06-04 13:46) [0]

Function CopyDir(Const FromDir, ToDir: String): Boolean;
Var Fos: TShFileOpStruct;
Begin
ZeroMemory(@Fos,SizeOf(Fos));
With Fos Do
Begin
wFunc:=FO_COPY;
fFlags:=FOF_FILESONLY or FOF_NOCONFIRMMKDIR or FOF_NOCONFIRMATION;
pFrom:=PChar(FromDir+#0);
pTo:=PChar(ToDir)
End;
Result:=(0=ShFileOperation(Fos));
End;

...
CopyDir("C:\Data\Report","E:\Data");

Файлы копируются, но не все. Те что копируются, урезаются в длинных именах на короткие. Если убрать флаг FOF_NOCONFIRMATION, выдаёт что-то типа "Получатель не поддерживает длинные имена и несколько кнопочек "Поиск", "Авто" и ещё что-то, вообщем прогон какой-то, хотя копирую просто из одного каталога в другой и не понятно, как это может быть, что новый каталог не поддерживает длинные имена.


 
Sarge   (2003-06-04 14:21) [1]

Чего, ребят, никто ShFileOperation не пользовался ??? :(


 
iNew ©   (2003-06-04 15:10) [2]

Взял твой код полностью и попробовал, все файлы и директории нормально скопировались хоть с короткими, хоть с длинными именами.
Только один вопрос. Я копировал так:
CopyDir("C:\From","C:\to");
Дак вот в директорию "to" скопировалась и папка From, а нужно было только её содержимое, как исправить?


 
Amoeba   (2003-06-04 15:15) [3]

Господа, читайте http://www.delphikingdom.com/mastering/fileshellapi.htm


 
Song ©   (2003-06-04 16:14) [4]

iNew © (04.06.03 15:10)
CopyDir("C:\From","C:\");



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

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

Наверх




Память: 0.47 MB
Время: 0.017 c
14-50436
Basic
2003-05-28 01:44
2003.06.16
Ошибка при работе с Rave


14-50478
Holy
2003-05-30 13:15
2003.06.16
Литература


1-50381
1977
2003-06-04 11:37
2003.06.16
Кнопка на панели задач...


7-50529
Jorassic_f
2003-04-10 12:41
2003.06.16
насильный скролинг или Message при скролинге


3-50232
Patrick
2003-05-21 10:01
2003.06.16
Изменения данных при использовании ADO.