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

Вниз

Удаление без рекурсии   Найти похожие ветки 

 
akosh12345 ©   (2010-06-08 01:20) [0]

Собственно говоря в теме состоит и вопрос. Как удалит каталог, и подкаталогами без рекурсии, то есть без вызова самого себя?


 
akosh12345 ©   (2010-06-08 01:31) [1]

Поясняю. Мне нужно показывать пользователю как удаляется все файлы в подкаталогах и в самом каталоге, то есть использую прогрессбар. Все эти действия создаю в потоке. То есть максимальное количество прогрессбара = количество файлов и каталогах в удаляемом каталоге. Мне нжуно что когда я создал поток удалилась вся папка полность. Подскажите как это сделать? или как можно того избежать??


 
Германн ©   (2010-06-08 01:45) [2]


> akosh12345 ©   (08.06.10 01:31) [1]
>
> Поясняю.

Сей бред ничего не поясняет. Имхо.
Поспи и возвращайся утром.
Утро вечера мудренее!


 
oldman ©   (2010-06-08 07:42) [3]

Создай список файлов и удаляй по очереди. Без рекурсии.
Хочешь весь каталог, хочешь избегая этого.


 
MBo ©   (2010-06-08 08:56) [4]

SHFileOperation попробуй использовать


 
Anatoly Podgoretsky ©   (2010-06-08 09:43) [5]

> akosh12345  (08.06.2010 01:31:01)  [1]

Избежать просто, достаточно не делать.


 
абизяна   (2010-06-08 12:11) [6]


> Anatoly Podgoretsky ©   (08.06.10 09:43) [5]
> > akosh12345  (08.06.2010 01:31:01)  [1]
>
> Избежать просто, достаточно не делать.


Хочешь избежать критики — ничего не делай, ничего не говори и будь никем.
(С) Элберд Хаббард.


 
Anatoly Podgoretsky ©   (2010-06-08 12:20) [7]

> абизяна  (08.06.2010 12:11:06)  [6]

Ты кого критикуешь?


 
абизяна   (2010-06-08 12:33) [8]


> Anatoly Podgoretsky ©   (08.06.10 12:20) [7]

Это не критика:-) Просто твои слова несколько похожи на известый афоризм.


 
akosh12345 ©   (2010-06-08 18:47) [9]

это же форум программистов. Что вы тут пишите всякую чушь!!! Серьезнее ребята


 
akosh12345 ©   (2010-06-08 18:59) [10]

ВОт смотри. Я создал список файлов TListBox. Храню там список файлов и каталгов. В первой цикле удаляю все файлы. во Втором удаляю папки. Проблема в удалении папок. Ведь когда в папке находится подпаки - не удалиться папка
. Как мне сделать так, что бы удалять снизу верх, то есть с подкаталогов.


 
Плохиш ©   (2010-06-08 19:40) [11]


> Как мне сделать так, что бы удалять снизу верх, то есть
> с подкаталогов.

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


 
И. Павел ©   (2010-06-08 19:52) [12]


Проблема в удалении папок. Ведь когда в папке находится подпаки - не удалиться папка

Раз уж вы используете ListBox, то, наверное, можно так:
ListBox.Sorted := true;
for i := ListBox1.Count-1 downto 0 do
 //удаляем ListBox1.Items[i]


 
Плохиш ©   (2010-06-08 20:16) [13]


> И. Павел ©   (08.06.10 19:52) [12]
>
>
> Проблема в удалении папок. Ведь когда в папке находится
> подпаки - не удалиться папка

>
> Раз уж вы используете ListBox, то, наверное, можно так:
> ListBox.Sorted := true;
> for i := ListBox1.Count-1 downto 0 do
>  //удаляем ListBox1.Items[i]

>

Так и не понял, как этот код поможет в решении проблемы?


 
И. Павел ©   (2010-06-08 20:32) [14]

> Так и не понял, как этот код поможет в решении проблемы?

Автор вопроса писал, что ему нужно определить - какие папки нужно удалять сначала, а какие - позже.
Так как путь к подпапке включает в себя путь к родительской папке, то после сортировки в начале будут папки, а затем - подпапки:
Было:
C:\1\2
C:\1\2\3
C:\1
После сортировки станет:
C:\1
C:\1\2
C:\1\2\3
Это если список неупорядочен изначально.



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

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

Наверх




Память: 0.48 MB
Время: 0.004 c
2-1276219742
Андрей_1
2010-06-11 05:29
2010.09.05
Видео поток + звук


2-1276126770
студент
2010-06-10 03:39
2010.09.05
drag&drop


15-1273206482
12
2010-05-07 08:28
2010.09.05
С днем связи!


15-1276159597
George
2010-06-10 12:46
2010.09.05
Iptables


6-1225280196
Андрей
2008-10-29 14:36
2010.09.05
TServerSocket/TClientSocket SendText





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский