Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   С/С++, C#, Delphi, .NET, Asm (https://forum.antichat.xyz/forumdisplay.php?f=24)
-   -   Все файлы одинакого расширения[delphi] (https://forum.antichat.xyz/showthread.php?t=175859)

marcos 03.02.2010 14:46

Все файлы одинакого расширения[delphi]
 
Всем привет! Подскажите как вывести в memo1 все файлы одного расширения на компьютере?

sn0w 03.02.2010 15:21

FindFirstFile/FindNextFile с соответствующими масками

вообще есть API и наскока помню в билдере оно в помощи идет. если речь о дельфи - незнаю, но должна быть.
есть мсдн также - но там обпаскаля нет

xafon 03.02.2010 18:44

Процедура которая ищет на компьютере файлы с определённым расширением.

Код:

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);
          end;
          FindResult := FindNext(SearchRec);
        end;
    finally
      FindClose(SearchRec);
    end;
  finally
    List.EndUpdate;
  end;
end;



Время: 14:01