скрыть

скрыть

  Форум  

Delphi FAQ - Часто задаваемые вопросы

| Базы данных | Графика и Игры | Интернет и Сети | Компоненты и Классы | Мультимедиа |
| ОС и Железо | Программа и Интерфейс | Рабочий стол | Синтаксис | Технологии | Файловая система |



Google  
 

Простейший сканер диска



Первое правило сисадина: "Лежаший на столе винчестер с данными выглядит точно так же как и винчестер без данных".

Вот пример, который ищет мп3 файлы на жестком диске...


unit Audit1;

interface
uses windos;

var
  dest: string;

procedure dorecurse(dir: string);

implementation
{$R *.DFM}

procedure Process(dir: string; Searchrec: tsearchrec);
begin
  showmessage(Searchrec.name);
  case Searchrec.attr of
    $10:
      if (searchrec.name <> '.') and (searchrec.name <> '..') then
      begin
        dorecurse(dir + '\' + searchrec.name);
        writeln(dir);
      end;
  end;
end;

procedure Dorecurse(dir: string);
var
  Searchrec: Tsearchrec;
  pc: array[0..79] of Char;
begin
  StrPCopy(pc, dir + '\*.mp3');
  FindFirst(pc, FaAnyfile, SearchRec);
  Process(dir, SearchRec);
  while FindNext(SearchRec) <> -18 do
  begin
    Process(dir, SearchRec);
  end;
end;

procedure startsearch;
begin
  dorecurse(paramstr(1));
end;

begin
  startsearch;
end.






Copyright © 2004-2016 "Delphi Sources". Delphi World FAQ




Группа ВКонтакте   Ссылка на Twitter   Группа на Facebook