Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2005.11.27;
Скачать: CL | DM;

Вниз

Удалить директорию   Найти похожие ветки 

 
Yus   (2005-11-10 07:32) [0]

Подскажите как удалить вложенные  директории. Делаю так:
function DirDelete(Dir:string):boolean;
var Search: TSearchrec;
begin
 if not DirectoryExists(Dir) then   EXIT;
 if FindFirst(Dir+"*.*", $3f, Search)= 0 then
 repeat
   DeleteFile(Dir+Search.Name);
  until FindNext(Search)<>0;
end;
Файлы удаляются(не все), а вложенные папки нет, если даже они пустые.


 
YuRock ©   (2005-11-10 08:28) [1]

Потому, что пустые директории удаляются через RemoveDirectory.
А вообще не мучайся, используй:

function DirDelete( const SSource: String ): Boolean;
var
 fo: SHFILEOPSTRUCT;
begin
 fo.Wnd := 0;
 fo.wFunc := FO_DELETE;
 fo.pFrom := PChar(SSource + #0);
 fo.pTo := PChar(SSource + #0);
 fo.fFlags := FOF_NOCONFIRMATION or FOF_SILENT;

 Result := not Boolean( SHFileOperation( fo ) );
end;

И uses ShellApi не забудь :)


 
Yus   (2005-11-10 11:56) [2]

Понял.Спасибо!!



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

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

Наверх




Память: 0.46 MB
Время: 0.058 c
3-1129579565
Jioniro
2005-10-18 00:06
2005.11.27
Сохранение настроек DbGrid в Blob поле.


3-1129360635
Иванов__
2005-10-15 11:17
2005.11.27
Ош. "Could not convert variant of type (NULL) into type (String)"


14-1130859331
kaif
2005-11-01 18:35
2005.11.27
Задача с конусом


14-1131376171
Lucius
2005-11-07 18:09
2005.11.27
Где можно найти этот компонент?


4-1127758262
NikNet
2005-09-26 22:11
2005.11.27
Как узнать ИНДЕКС кнопки на ToolBar(е)