Имя пользователя:
Пароль:
 

Название темы: Чистка флэшки
Показать сообщение отдельно

Аватара для ddv122

Старожил


Сообщения: 222
Благодарности: 19

Профиль | Отправить PM | Цитировать


Цитата ferget:
Код: Выделить весь код
void __fastcall TForm1::Button1Click(TObject *Sender)
{
 AnsiString DirPath = "";
 TStringList* ToDel = new TStringList();
 ToDel->LoadFromFile("Spisok.txt");
 AnsiString ObjectName;
 for (int i = ToDel ->Count-1; i >= 0; i--)
 {
 ObjectName = DirPath+ToDel->Strings[i];
 if (DirectoryExists)
 {
 DeleteDir(ObjectName);
 RemoveDir (ObjectName);
 }else
 (FileExists);
 DeleteFile (ObjectName);
 }
 delete ToDel;
}
//---------------------------------------------------------------------------
bool DeleteDir(AnsiString DirName)
{
TSearchRec sr;
if (DirName.Length())
 {
 if (!FindFirst(DirName+"\\*.*",faAnyFile,sr))
 do
 {
 if (!(sr.Name=="." || sr.Name==".."))
 if (((sr.Attr & faDirectory) == faDirectory ) ||
 (sr.Attr == faDirectory))// найдена папка
 {
 FileSetAttr(DirName+"\\"+sr.Name, faDirectory );
 DeleteDir(DirName+"\\"+sr.Name);
 RemoveDir(DirName + "\\"+sr.Name);
 }
 else
 {
 FileSetAttr(DirName+"\\"+sr.Name, 0);
 DeleteFile(DirName+"\\"+sr.Name);
 }
 }
 while (!FindNext(sr));
 FindClose(sr);
 }
RemoveDir(DirName);
return true
»
Беда, так он очищает Всё с AnsiString DirPath = "Edit1->Text";
Т.е все папки с диска, а не со spisok.txt

-------
Одна голова хорошо, а двух у меня нет...


Последний раз редактировалось Drongo, 14-03-2012 в 16:28. Причина: [code]


Отправлено: 11:09, 14-03-2012 | #42

Название темы: Чистка флэшки