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

очистить папку темп(текущий пользователь)   Найти похожие ветки 

 
Prov   (2004-09-21 16:11) [0]

Уважаемые мастера, подскажите, пожалуйста....
Есть такой вот код:

procedure EraseTemp;
 var Buffer: array[0..255] of PChar;  lpsz: cardinal;
 SH:TSHFileOpStruct; TMPString: PChar;
begin
 lpsz:= SizeOf(Buffer);
 windows.GetTempPath(lpsz, @buffer);
 FillChar(SH, SizeOf(SH), 0);
 SH.Wnd:= 0;
 SH.wFunc:= FO_DELETE;
 TMPString:= PChar(PChar(@Buffer) + "\*.*");
 SH.pFrom:= TmpString;
 SH.fFlags:= FOF_NOCONFIRMATION or FOF_SILENT;
 SH.fAnyOperationsAborted:= FALSE;
 SHFileOperation(SH);
end;

который чистит темп текущего юзверя... Дело в том, что не удаляются папки, только файлы. И ещё: если на каком-то этапе очистки файлов возникает acces denied(тобишь, файл занят другим приложением) - ВСЕ !!! Процедура дальше не работает, а останавливается на том, что уже почистила, и не удаляет остальные файлы, к которым есть доступ на удаление. Подскажите, как быть.
Заранее благодарен.


 
clickmaker ©   (2004-09-21 16:13) [1]

DeleteFile в цикле для всех файлов рекурсивно


 
Prov   (2004-09-21 16:36) [2]

прошу прощения.
пишу так:

DeleteFile("D:\1\*.*");

А на диске Д в папке 1 все равно остаются все файлы, подскажите, будьте добры


 
Prov   (2004-09-21 16:53) [3]

Так, папки моя процедура удаляет... Но, если перед папкой она не может удпалить какой-то файл - все, дальше ничего не удаляет..
Пожалуйста, подскажите, как быть, чтобы в заданной папке осталишь лишь неудаляемые на данный момент файлы


 
clickmaker ©   (2004-09-21 17:04) [4]


>  [3] Prov   (21.09.04 16:53)

В DeleteFile нельзя передавать маску, только путь к файлу.
FindFirstFile / FindNextFile рекурсивно + DeleteFile
В итоге останутся только неудаляемые


 
Prov   (2004-09-21 17:07) [5]

а через ф-цию SHFileOperation такого нельзя сделать ?


 
Prov   (2004-09-21 17:11) [6]

И если можете, подскажите, пожалуйста, как найти путь к папке КУКИ ?



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

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



Память: 0.46 MB
Время: 0.051 c
4-1094031371
Fabo
2004-09-01 13:36
2004.10.24
изменение размера сектора


3-1096265024
MakNik
2004-09-27 10:03
2004.10.24
Аналог ф-ции NewID()


1-1097066708
Klopan
2004-10-06 16:45
2004.10.24
List


14-1097056418
КаПиБаРа
2004-10-06 13:53
2004.10.24
Помогите составить структуру БД.


6-1092911031
Serguar
2004-08-19 14:23
2004.10.24
TIdTCPServer. Корректное завершение работы




   Наверх