Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2003.11.17;
Скачать: [xml.tar.bz2];

Вниз

Удаление каталога с содержимым   Найти похожие ветки 

 
Karburator   (2003-09-03 16:20) [0]

Не смог найти функцию удаления каталога со всем содержимым, пришлось написать, но каталоги почему-то не удаляются. Логически вроде правильно. нифига не понимаю. Help me!!!

мой код:
function TForm1.DirDel(path: string): integer;
var SearchRec: TSearchRec;
Begin
if findfirst(path+"\*", faAnyFile, SearchRec)=0 then
if (SearchRec.Name[1]<>".") then
if FileExists(path+"\"+SearchRec.Name) then DeleteFile(path+"\"+SearchRec.Name)
else if SetCurrentDir(path+"\"+SearchRec.Name) then DirDel(path+"\"+SearchRec.Name);
while findnext(SearchRec)=0 do
if (SearchRec.Name[1]<>".") then
if FileExists(path+"\"+SearchRec.Name) then DeleteFile(path+"\"+SearchRec.Name)
else if SetCurrentDir(path+"\"+SearchRec.Name) then DirDel(path+"\"+SearchRec.Name);
findclose(SearchRec);
if not removedir(path) then showmessage("""+path+ "" - незя удалить");
end;


 
han_malign   (2003-09-03 16:41) [1]

>if FileExists(path+"\"+SearchRec.Name)
- if((SearchRec.Attr and faDirectory)=0)

>if SetCurrentDir(path+"\"+SearchRec.Name)
- ай молодца - заблокировал каталог и удивляется что он не удаляется... Совершенно лишнее, ведь указывается длинный путь <path+"\"+SearchRec.Name>.

З.Ы.>if (SearchRec.Name[1]<>".")
- между прочим ".dot" - вполне нормальное имя файла(каталога), хотя я сам так всегда делаю(зная что у меня таких нет).

З.З.Ы. А чтобы не писать два раза одинаковый набор набор операция, увеличивая размер кода - используют repeat until


 
Anatoly Podgoretsky   (2003-09-03 17:15) [2]

Зачем писать, есть же готовая в системе - SetFileOperation


 
som   (2003-09-04 13:14) [3]

http://www.codenet.ru/progr/delphi/quest040.php


 
Verg   (2003-09-04 17:26) [4]

Эта функция есть в комплекте RxLib (unit FileUtil)

function ClearDir(const Path: string; Delete: Boolean): Boolean;


 
Song   (2003-09-06 18:58) [5]

ShFileOperation()



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

Форум: "Система";
Текущий архив: 2003.11.17;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.45 MB
Время: 0.013 c
1-56701
Nikolas
2003-11-06 20:38
2003.11.17
StringGrid


14-56832
BJValentine
2003-10-17 15:08
2003.11.17
Спорт


1-56653
Niobe
2003-11-05 12:15
2003.11.17
Запретить изменение размеров формы


8-56775
Николай В.
2003-07-22 15:20
2003.11.17
OpenGL


14-56893
VEG
2003-10-19 14:20
2003.11.17
Кто что и как думает об технологии .NET?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский