Главная страница
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.01 c
3-50227
Rise
2003-05-26 14:22
2003.06.16
DBGRID


6-50412
anpv
2003-04-11 08:51
2003.06.16
!!! Быстрее чем NMFTP !!!


3-50256
N&N
2003-05-23 12:13
2003.06.16
Запрос на разные даты


1-50392
midi
2003-06-04 12:02
2003.06.16
как правильно использовать CLX компоненты в Dll/Package


3-50258
rosl
2003-05-27 09:38
2003.06.16
DateTimePicker