Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2009.09.06;
Скачать: CL | DM;

Вниз

поск файлов на winAPI   Найти похожие ветки 

 
batya-x   (2008-07-21 00:38) [0]

procedure FindFiles(pach:string);
var
FileName: string;
FindHandle:THandle;
SearchRec:TWIN32FindData;
begin
SetCurrentDirectory(pchar(pach+"/"));
try
 FindHandle := FindFirstFile(pchar(pach+"*.*"), SearchRec);
 if FindHandle <> INVALID_HANDLE_VALUE then
 repeat
  if (SearchRec.dwFileAttributes=FILE_ATTRIBUTE_DIRECTORY) and
        (SearchRec.cFileName<>pchar(".")) and (SearchRec.cFileName<>"..")
            then  FindFiles(pach+"\"+SearchRec.cFileName)
            else
  Form4.Memo1.Lines.add(pach+"\"+SearchRec.cFileName);
 until FindNextFile(FindHandle,SearchRec)=false;
 finally
  Windows.FindClose(FindHandle);
 end;
end;


находит файлы но не все
вот что он показывает, помогите где я что пропустил
<c:\011.DOC
c:\AUTOEXEC.BAT
c:\boot.ini
c:\Bootfont.bin
c:\CanoScan
c:\Config.Msi
c:\hiberfil.sys
c:\IO.SYS
c:\MSDOS.SYS
c:\NTDETECT.COM
c:\ntldr
c:\pagefile.sys
c:\PDOXUSRS.NET
c:\ProgDVB.ini
c:\Program Files
c:\RECYCLER
c:\Scanitto_1.bmp
c:\soundtrack_-_the_time_of_my_life.mp3
c:\System Volume Information
c:\Thumbs.db
c:\wamp\wamp\wamp5.chm
c:\wamp\wamp\wampmanager.conf
c:\wamp\wamp\wampmanager.exe
c:\wamp\wamp\wampmanager.ini
c:\wamp\wamp\wampmanager.tpl
c:\wamp\wamp\wampserver.ico
c:\WINDOWS\WINDOWS\WindowsShell.Manifest
c:\WINDOWS\WINDOWS\WindowsUpdate.log
c:\Рисунок1.plt/CODE>


 
Германн ©   (2008-07-21 01:09) [1]


> SearchRec.dwFileAttributes=FILE_ATTRIBUTE_DIRECTORY

Неверно. Атрибутов может быть более одного.


 
SergeyIT ©   (2008-07-21 01:19) [2]

Зачем?
SetCurrentDirectory(pchar(pach+"/"));  ??? "/"


 
batya-x   (2008-07-21 01:27) [3]


> > SearchRec.dwFileAttributes=FILE_ATTRIBUTE_DIRECTORYНеверно.
>  Атрибутов может быть более одного.

а как правильно сделать проверку


 
SergeyIT ©   (2008-07-21 01:29) [4]

Как-то
((SearchRec.dwFileAttributes and FILE_ATTRIBUTE_DIRECTORY) <> 0)


 
batya-x   (2008-07-21 01:35) [5]

блин отказываеться работать нормально, есть у кого нормальны йрабочий пример на winApi сегодня целы день убил


 
batya-x   (2008-07-21 01:45) [6]

кажеться я нашел, у меня неправильно сравниваеться
SearchRec.cFileName<>pchar(".")
точка постоянно вылетает

cFileName: array[0..MAX_PATH - 1] of AnsiChar; vs pchar(".")

как их правильно сравнить


 
batya-x   (2008-07-21 01:47) [7]

во мля
SearchRec.cFileName[0]<>".") and (SearchRec.cFileName<>pchar("..")
хотя не уверен, но всё работает


 
Германн ©   (2008-07-21 01:59) [8]


> batya-x   (21.07.08 01:47) [7]
>
> во мля
> SearchRec.cFileName[0]<>".") and (SearchRec.cFileName<>pchar(".
> .")
> хотя не уверен, но всё работает
>


SearchRec.cFileName[0]<>"." - это что за зверь?
Может рано тебе пока постить вопросы в WinAPI?


 
batya-x   (2008-07-21 03:59) [9]

Удалено модератором
Примечание: Mat


 
Riply ©   (2008-07-21 06:33) [10]

> [5] batya-x   (21.07.08 01:35)
> блин отказываеться работать нормально, есть у кого нормальны йрабочий пример на winApi сегодня целы день убил

Смотря что считать решением. Если то, что кто-то даст тебе готовый код, то день - действительно много,
а если попытку понять и разобраться, то день это ничто :)
По сабжу: хотела помочь - да не могу.
Не компилится у меня твой пример: ругается, мол не знаю что такое Form4.
Сделай так, чтобы у меня компилировался и тогда попробуем его улучшить :)



Страницы: 1 вся ветка

Текущий архив: 2009.09.06;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.018 c
2-1245366914
DimonS
2009-06-19 03:15
2009.09.06
Ошибка при подключении к *.xls


15-1246891880
{RASkov}
2009-07-06 18:51
2009.09.06
Двусторонняя печать


1-1214219828
Alik
2008-06-23 15:17
2009.09.06
Выделение контура региона


15-1245256088
Павел Калугин
2009-06-17 20:28
2009.09.06
Ура, я инжинер.


15-1246882901
inventor_delirium
2009-07-06 16:21
2009.09.06
Использование процессора другого компьютера, как своего..