![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
file *.* [D6, WinXP]
LeonW © (2005-09-28 05:28:00)Привет! как дела? а можно ли сделать так - что бы программа искала на пример все файля *.txt или *.bmp и удаляла их????
приэтом стоит два винчестера.
посибо с уважением Leon
Tier (2005-10-13 20:03:00) [1]хм небольшая ошибка в коде, точнее не доглядел, здесь:
if MatchesMask(Name, Mask) then
List.Add(StartFolder+Name);
deletefile(StartFolder+Name);
end;
Надо бы скобки поставить дополнительно, ну в смысле Begin и end
Иначе так и будет удалять все файлы подряд без учета маски.
leonw (2005-10-06 23:50:00) [2]ивидемся! и посибО!
leonw (2005-10-04 01:32:00) [3]почему? на мило напиши = я думаю что лучше новинькое:=?
Fay (2005-10-03 19:54:00) [4]2 Alexander Panov © (03.10.05 19:41) [52]
Точно, это у меня память глючит 8((.
Alexander Panov (2005-10-03 19:41:00) [5]>Fay © (03.10.05 19:20) [50]
2 Adder © (29.09.05 22:07) [23]
Файл с именем '.' запросто может существовать, не являясь при этом текущим каталогом.
Ну-ну. Попробуй создать на какой-либо файловой системе.
В случае удачи сообщи - я поудивляюсь.
GuAV (2005-10-03 19:36:00) [6]Fay © (03.10.05 19:20) [50]
Файл с именем '.' запросто может существовать, не являясь при этом текущим каталогом.
Интересно.. а какая файловая система ? в fat файл . уже сушествует в каждой директории и является этой директорией.
Fay (2005-10-03 19:20:00) [7]2 Adder © (29.09.05 22:07) [23]
Файл с именем '.' запросто может существовать, не являясь при этом текущим каталогом.
З.Ы.
Тов. Alexander Panov это тоже касается.
leonw (2005-10-03 17:15:00) [8]Удалено модератором
leonw (2005-10-03 17:13:00) [9]Adder - Федор: написал - не совсем то что я хотел.
leonw (2005-10-03 17:10:00) [10]Удалено модератором
Adder (2005-10-02 14:31:00) [11]
> leonw © (02.10.05 04:50) [45]
Выше сказано несколько по другому. Наверное, я не очень четко выразила свою мысль. Имелось в виду - не стоит заменять в определении функции (которую дал Фёдор) TStringList на TStrings, пока не понимаешь, к чему это приведет -)
А это и привело к:
Abstract error- постоянно вылазиет?????
Strings: TStrings;
Strings := TStrings.Create - вот так делать нельзя.Но ты таки попытался сделать именно это.
Зато вот так
Strings: TStrings;
Strings := TStringList.Create
> Kolan © (02.10.05 00:12) [43]
Делать можно.
Вообще советую все-же почитать какую-нибудь книгу по Delphi и Object Pascal. Тогда будет понятно, почему нельзя создавать объект TStrings -)
И почему в функцию, где ожидается TStrings, можно передавать наследника TStrings - например, TStringList.
ps Объяснять "на пальцах" у меня таланта нет, к сожалению. -(
leonw (2005-10-02 04:50:00) [12]Kolan - да но чуть выше сказано - что лучше так не делать!!! ???
leonw (2005-10-02 04:40:00) [13]Kolan - а почему ты спрашиваешь про возраст????
- ок попробую!!!
Kolan (2005-10-02 00:12:00) [14]leonw © (01.10.05 23:41) [42]
Тебе действительно 9 лет?
Abstract error- постоянно вылазиет?????
Strings: TStrings;
//
Strings := TStringList.Create
leonw (2005-10-01 23:41:00) [15]но у меня ошибки нет= все нормально работает!!!
GuAV (2005-10-01 14:40:00) [16]
>if ScanSubFolders and (Name='.') and (Name='..') then
> FindFiles(StartFolder+Name, Mask, List,
> ScanSubFolders);
здесь ошибка.
leonw (2005-10-01 03:28:00) [17]ну вот с пустя несколько дней хоть что то! теперь программам удаляет файлы! но есть проблема - она их удаляет в указанном катологе! а как сделть чтобы она их еще и искала????
-----------------------------
procedure FindFiles(StartFolder, Mask: String; List: TStrings;
ScanSubFolders: Boolean = True);
var
SearchRec: TSearchRec;
FindResult: Integer;
begin
List.BeginUpdate;
try
StartFolder:=IncludeTrailingBackslash(StartFolder);
FindResult:=FindFirst(StartFolder+'*.*', faAnyFile, SearchRec);
try
while FindResult = 0 do with SearchRec do begin
if (Attr and faDirectory)<>0 then begin
if ScanSubFolders and (Name='.') and (Name='..') then
FindFiles(StartFolder+Name, Mask, List, ScanSubFolders);
end else begin
if MatchesMask(Name, Mask) then
List.Add(StartFolder+Name);
deletefile(StartFolder+Name);
end;
FindResult:=FindNext(SearchRec);
end;
finally
FindClose(SearchRec);
end;
finally
List.EndUpdate;
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
FindFiles('C:\1\', '*.txt', memo1.Lines, true);
end;
leonw (2005-09-30 23:16:00) [18]Abstract error- постоянно вылазиет?????
leonw (2005-09-30 22:04:00) [19]без дитонатора.. :))))
leonw (2005-09-30 21:57:00) [20]Привет всем! вот ссылка http://www.leonw.hotmail.ru/
там кнопка! и текстовый самодельный блокнот!!!
-честно что то я совсе запутался. Alexander Panov - написал код.
только при запуске ничего не происходит? ни поиска ни другого движения?