[fpc-devel] FindFirst with faAnyFile doesn't return all files.

Michael Van Canneyt michael at freepascal.org
Wed Aug 15 10:40:32 CEST 2007

On Wed, 15 Aug 2007, Graeme Geldenhuys wrote:

> Hi,
> This was posted in the Lazarus mailing list a while back.  Has this
> been report or fixed in FPC?

Neither reported nor fixed.

Please create a bug report in the FPC bugtracker.


> ---------------  Copy ------------------------
> I have had some headaches while using FindFirst function to search for
> files in a folder.
> I would share some gained knowledge with the people on this list.
> Everybody knows about file attributes (archive, system, hidden, read only).
> If someone use FindFirst('*.*', faAnyFile, SearchRec) it assumes that
> faAnyFile is enough to get every file from the directory.
> No, it is not. If a file has none of the attributes set, the faAnyFile
> will not include that file in the search.
> Those files, without any of the mentioned attributes set, they have
> attribute Normal, and this attribute is not defined as faNormal anywhere
> in RTL ( see
> http://www.freepascal.org/docs-html/rtl/dos/fileattributes.html ).
> If one would like to get all the files from a folder by using FindFirst
> and FindNext, then he should use:
> FindFirst('*.*', faAnyFile or $00000080, SearchRec);
> ---------------  END ------------------------
> Apparently the same thing occurs in Delphi, but I also believe this is
> a bug and should be solve (if not yet done) in FPC.
> Regards,
>   - Graeme -
> _______________________________________________
> fpc-devel maillist  -  fpc-devel at lists.freepascal.org
> http://lists.freepascal.org/mailman/listinfo/fpc-devel

More information about the fpc-devel mailing list