Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

отобразить все файлы находящиеся в папке [D7, WinXP]


Dmitry_177 ©   (2007-04-02 15:15:00) 

Как средствами WinAPI можно отобразить все файлы из папки?


Reindeer Moss Eater   (2007-04-03 10:18:00) [1]

An application sends an LB_DIR message to add a list of filenames to a list box.

LB_DIR  
wParam = (WPARAM) (UINT) uAttrs;          // file attributes
lParam = (LPARAM) (LPCTSTR) lpszFileSpec; // filename address


KSergey   (2007-04-03 10:12:00) [2]

> KSergey ©   (02.04.07 15:42) [4]
> А какие вызовы в приведенном примере не native API?
>
> Leonid Troyanovsky ©   (02.04.07 15:49) [5]
> FindFirstFile
> FindNextFile
> Windows.FindClose

Сорри, не вчитался в исходный пост


Dmitry_177   (2007-04-02 16:02:00) [3]

Спасибо =)


Сергей М.   (2007-04-02 15:57:00) [4]


> Dmitry_177   (02.04.07 15:51) [6]


until NOTFindNextFile(..)


MBo   (2007-04-02 15:53:00) [5]

попробуй заглянуть в исходники FindFirst, иногда помогает


Dmitry_177   (2007-04-02 15:51:00) [6]

Подскажите пожалуйста почему выводится только один файл и все...

procedure TForm1.Button1Click(Sender: TObject);
var
 hFound: THandle;
 wfnd: WIN32_FIND_DATA;
begin
 hFound := Windows.FindFirstFile('C:\*.*', wfnd);
 repeat
   if wfnd.dwFileAttributes <> FILE_ATTRIBUTE_DIRECTORY then
     ListBox1.Items.Add(wfnd.cFileName)
 until Windows.FindNextFile(hFound, wfnd);

 Windows.FindClose(hFound);
end;


Leonid Troyanovsky   (2007-04-02 15:49:00) [7]


> Dmitry_177   (02.04.07 15:27) [2]

> что-то вроде этого но на API..

FindFirstFile
FindNextFile
Windows.FindClose

--
Regards, LVT.


KSergey   (2007-04-02 15:42:00) [8]

> Dmitry_177   (02.04.07 15:27) [2]
> что-то вроде этого но на API..

А какие вызовы в приведенном примере не native API?


Сергей М.   (2007-04-02 15:36:00) [9]


> что-то вроде этого но на API


Чем VCL-то не угодила ?

Только, умоляю, не надо уже про "размер экзешника")..


Dmitry_177   (2007-04-02 15:27:00) [10]

неправильно выразился... не отобразить а перечислить все файлы..

 if FindFirst(Path + '\*.*', faAnyFile, SR) = 0 then
   begin
     repeat
       if (SR.Attr <> faDirectory) then
         MessageBox(0, SR.Name, '', 0);
     until FindNext(SR) <> 0;
     FindClose(SR);
   end;

что-то вроде этого но на API..


Leonid Troyanovsky   (2007-04-02 15:19:00) [11]


> Dmitry_177   (02.04.07 15:15)  

> Как средствами WinAPI можно отобразить все файлы из папки?

SendMessage LB_DIR

--
Regards, LVT.


Наверх

Титульная страница Поиск, карта сайта Написать письмо