Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.05.02;
Скачать: 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 вся ветка

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

Наверх




Память: 0.47 MB
Время: 0.043 c
1-1082205529
Максим
2004-04-17 16:38
2004.05.02
Как сделать Zoom=100% в PrintPriview?


1-1081963930
TCrash
2004-04-14 21:32
2004.05.02
Котмпонент по типу TEdit


1-1081849117
Alone
2004-04-13 13:38
2004.05.02
MakeObjectInstance - memory leak


1-1082041888
Avreliy
2004-04-15 19:11
2004.05.02
Массив объектов класса TEdit


7-1079334850
comwad
2004-03-15 10:14
2004.05.02
Как послать сообщение неактивному приложению ?