Текущий архив: 2004.12.19;
Скачать: CL | DM;
Вниз
Как удалить все файлы и папки по указанному пути? Найти похожие ветки
← →
z_man © (2004-12-06 22:29) [0]Как удалить все файлы и папки по указанному пути без подтверждения на удаление?
← →
Kolan © (2004-12-06 22:37) [1]Способ 1: проход по дереву каталогов (Функция для удаления каталогов, взята из рассылки "Мастера DELPHI. Новости мира компонент, FAQ, статьи..." - собственно код аналогичен написанному мной коду по рекурсивному проходу каталогов здесь)
Function MyRemoveDir(sDir : String) : Boolean;
var
iIndex : Integer;
SearchRec : TSearchRec;
sFileName : String;
begin
Result := False;
sDir := sDir + "\*.*";
iIndex := FindFirst(sDir, faAnyFile, SearchRec);
while iIndex = 0 do
begin
sFileName := ExtractFileDir(sDir)+"\"+SearchRec.Name;
if SearchRec.Attr = faDirectory then
begin
if (SearchRec.Name <> "" ) and (SearchRec.Name <> ".") and (SearchRec.Name <> "..") then MyRemoveDir(sFileName);
end
else
begin
if SearchRec.Attr <> faArchive then FileSetAttr(sFileName, faArchive);
if NOT DeleteFile(sFileName) then ShowMessage("Could NOT delete " + sFileName);
end;
iIndex := FindNext(SearchRec);
end;
FindClose(SearchRec);
RemoveDir(ExtractFileDir(sDir));
Result := True;
end;
Способ 2: Использование ShellApi
uses ShellApi;
...
var sh : SHFILEOPSTRUCT;
begin
...
sh.Wnd := Application.Handle;
sh.wFunc := FO_DELETE;
sh.pFrom := "c:\\test\0";
sh.pTo := nil;
sh.fFlags := FOF_NOCONFIRMATION or FOF_SILENT;
sh.hNameMappings := nil;
sh.lpszProgressTitle := nil;
SHFileOperation (sh);
...
Надо путь писать : c:\\test\dfg
Чтобы вначале "\\" было...иначе не будет удалять диры из корня
Автор ответа: Baa
Взято с Vingrad.ru http://forum.vingrad.ru
← →
Anatoly Podgoretsky © (2004-12-06 22:58) [2]shfileoperation
← →
TButton © (2004-12-07 01:12) [3]
> Как удалить все файлы и папки по указанному пути без подтверждения
> на удаление?
а путь случаем не c:\windows?
← →
uny © (2004-12-07 07:12) [4]ха, я тоже совсем давно думал, что подтверждение само появляется и файлы автоматом в корзину удаляются:)
Страницы: 1 вся ветка
Текущий архив: 2004.12.19;
Скачать: CL | DM;
Память: 0.48 MB
Время: 0.023 c