![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
![]() |
|
Опции темы | Поиск в этой теме | Опции просмотра |
|
#1
|
|||
|
|||
![]() Нужна помощь. Хочу дополнить свой код. Нужно, чтобы из папки "Мои документы" по нажатию кнопки удалялись все файлы с расширением *.txt.
Как узнать путь к папке "Мои документы" я узнал. Вот код: Код:
//Сначала добавить в Uses ActiveX, ShlObj; //Узнать папку Мои документы function GetMyDoc : string; var SpecialDir: PItemIdList; begin SetLength(result, MAX_PATH); SHGetSpecialFolderLocation(Form1.Handle, CSIDL_PERSONAL, SpecialDir); SHGetPathFromIDList(SpecialDir, PChar(Result)); SetLength(result, lStrLen(PChar(Result))); end; procedure TForm1.Button1Click(Sender: TObject); begin showmessage(GetMyDoc); end; Как теперь можно из папки "Мои документы" удались файлы с расширением *.txt ??????? |
#2
|
||||
|
||||
![]() FindFirst, FindNext. В справке имеется пример использования.
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#3
|
|||
|
|||
![]() А как можно применить их к моему примеру. Не могу никак разобраться. В справке написана общая информация.
|
#4
|
||||
|
||||
![]() Достаточно простой пример:
Код:
function DeleteFiles(const FileMask : String) : Boolean; var SRec : TSearchRec; Path : String; begin Result := FindFirst(FileMask, faAnyFile, SRec) = 0; if not Result then exit; try Path := ExtractFilePath(FileMask); Repeat if (SRec.Name <> '') and (SRec.Name <> '.') and (SRec.Name <> '..') and (SRec.Attr and (faVolumeID + faDirectory) = 0) then begin Result := DeleteFile(Path + SRec.Name); if not Result then break; end; Until FindNext(SRec) <> 0; finally FindClose(SRec); end; end; Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
Этот пользователь сказал Спасибо angvelem за это полезное сообщение: | ||
StudentMarat (21.04.2012)
|
#5
|
|||
|
|||
![]() Я попробовал применить функцию вот так:
Код:
DeleteFiles('D:\Новая папка\*.txt'); А как сделать так,чтобы удаляла из папки "Мои документы". В ручеую прописывать не вариант, т.к. папка "Мои документы" может быть настроена по разному. У меня на компе, к примеру, я её настроил на диск D. На других компах она может быть настроена по умолчанию при постановке винды, т.е. c:\Document and Setting\Имя пользователя\Мои документы. |
#6
|
||||
|
||||
![]() Цитата:
Je venus de nulle part 55.026263 с.ш., 73.397636 в.д. |
#7
|
|||
|
|||
![]() Цитата:
немножко напряч мозги =) путь к папке документы знаем. теперь Код:
var path:string; begin path:=GetMyDoc; |