Вниз
Скачать: CL | DM;

ShellApi - удаление всех файлов из каталога   Найти похожие ветки 

 
iVovs ©   (2004-04-15 14:48) [0]

Ув. мастера, может кто сталкивался с такой проблемой: для удаления файлов из каталога использую следующую ф-цию:

function TMainForm.FileManage(FromFile, ToFile: string; mode: integer): integer;
var SHF: TSHFileOpStruct;
begin
with SHF do
begin
 Wnd :=0;
 pFrom := PChar(FromFile);
 pTo := PChar(ToFile);
 wFunc := mode;
 fFlags := FOF_ALLOWUNDO;
end;
Result := SHFileOperation(SHF);
if Result <> 0 then
 if SHF.fAnyOperationsAborted
  then Result := 1
  else Result := 2;
end;

Вызываю вот так: FileManage(ExtractFilePath(Application.ExeName) + "temp\*.*", "", FO_DELETE); , для удаления всех файлов из ..temp/  .

Проблема в следующем: не всегда получается удалить файлы - выдаёт ошибку, мол "Cannot read from source disk", ну или вроде этого. Сразу при запуске проги удалить можно, что-то как-то пощёлкаешь в проге - ошибка.
Может кто знает в чём трабл?


 
Smithson ©   (2004-04-15 14:49) [1]

А если файл в данный момент открыт (занят) - как его удалить?

Тем более в темпе, там вечно кто-то что-то пишет...


 
iVovs ©   (2004-04-15 14:52) [2]

temp - это мною созданная папка - для хранения временных файлов;
и при удалении эта папка программой(моей) не используется.


 
Anatoly Podgoretsky ©   (2004-04-15 15:35) [3]

pFrom := PChar(FromFile+#0);
pTo := PChar(ToFile+#0);


 
Amoeba ©   (2004-04-15 15:38) [4]

На "Королевстве Дельфи" есть отдельная статья на эту тему
http://www.delphikingdom.com/mastering/fileshellapi.htm



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

Скачать: CL | DM;



Память: 0.45 MB
Время: 0.02 c
14-1081848497
wHammer
2004-04-13 13:28
2004.05.02
Меч распаковать .cab


14-1081421569
Igor_thief
2004-04-08 14:52
2004.05.02
Currency


1-1081873908
AsD
2004-04-13 20:31
2004.05.02
BPL и формы


14-1081254971
Kolyan
2004-04-06 16:36
2004.05.02
Нужен совет


3-1081249724
rw
2004-04-06 15:08
2004.05.02
помогите сделать запрос




   Наверх