Форум по Delphi программированию

Delphi Sources



Вернуться   Форум по Delphi программированию > Все о Delphi > [ "Начинающим" ]
Ник
Пароль
Регистрация <<         Правила форума         >> FAQ Пользователи Календарь Поиск Сообщения за сегодня Все разделы прочитаны

Ответ
 
Опции темы Поиск в этой теме Опции просмотра
  #1  
Старый 06.12.2008, 21:02
Аватар для Winny
Winny Winny вне форума
Продвинутый
 
Регистрация: 26.05.2007
Адрес: Планета земля, Россия, Москва
Сообщения: 620
Репутация: 30
По умолчанию Получить список папок

Необходимо получить список папок определённой директории и вывести список в массив строк. Поиски не дали результатов. Кто-нибудь знает решение проблемы?
__________________

Ответить с цитированием
  #2  
Старый 06.12.2008, 22:09
Drozh Drozh вне форума
Активный
 
Регистрация: 12.06.2008
Сообщения: 313
Репутация: 40
По умолчанию

Так
Код:
function MatchAttrs(flags, attrs: DWORD): Boolean;
begin
  MatchAttrs := (flags and attrs) = flags;
end;

function SearchInFolder(folder: String; names: TStrings): Boolean;
var
 hSearch: Thandle;
 FindData: WIN32_FIND_DATA;
 strSearchPath: String;
 bRes: Boolean;
begin
 strSearchPath := folder + '\*.*';
 bRes:= false;

 hSearch := FindFirstFile(PAnsiChar(strSearchPath), FindData);
  if hSearch <> INVALID_HANDLE_VALUE then
   repeat
    if (String(FindData.cFileName) <> '..') and
       (String(FindData.cFileName) <> '.') then
     if MatchAttrs(FILE_ATTRIBUTE_DIRECTORY, FindData.dwFileAttributes) then
     begin
      names.Add(FindData.cFileName);
      bRes:=True;
     end;
    until FindNextFile(hSearch, FindData) = False;

 SearchInFolder := bRes;
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
 if not SearchInFolder('C:\Windows', Memo1.Lines) then
  ShowMessage('Error');
end;
Ответить с цитированием
  #3  
Старый 06.12.2008, 22:49
Аватар для Winny
Winny Winny вне форума
Продвинутый
 
Регистрация: 26.05.2007
Адрес: Планета земля, Россия, Москва
Сообщения: 620
Репутация: 30
По умолчанию

Спасибо, выручил!
__________________

Ответить с цитированием
Ответ


Delphi Sources

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать темы
Вы не можете отвечать на сообщения
Вы не можете прикреплять файлы
Вы не можете редактировать сообщения

BB-коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход


Часовой пояс GMT +3, время: 16:41.


 

Сайт

Форум

FAQ

RSS лента

Прочее

 

Copyright © Форум "Delphi Sources" by BrokenByte Software, 2004-2023

ВКонтакте   Facebook   Twitter