TIP: Click on subject to list as thread! ANSI
echo: os2prog
to: Phil Crown
from: Jonathan de Boyne Pollard
date: 1995-12-27 21:32:59
subject: Pfilefindbuf3

This loop will scan a directory, reading 4Kb's worth of directory
  entries at a time.  Note that you do *not* have to declare the result
  buffer as a FILEFINDBUF3 structure, and that in fact it is more
  convenient when you do not do so.

    //
    // char * pattern ;         /* This is the search pattern */
    //

    #define FINDBUFLEN 4096

    char FindBuf[FINDBUFLEN] ;  // Result buffer is 4Kb
    ULONG Dir = HDIR_CREATE ;
    ULONG SearchCount = FINDBUFLEN ;

    if (!DosFindFirst(pattern, &Dir, FILE_ARCHIVED|FILE_READONLY,
        FindBuf, FINDBUFLEN, &SearchCount, FIL_STANDARD)) {

        do {
            FILEFINDBUF3 * fb = (FILEFINDBUF3 *)FindBuf ;

            while (SearchCount--) {

                // Do something with fb here ...

                fb = (FILEFINDBUF3 *)( ((char *)fb) + fb->oNextEntryOffset ) ;
            }

            SearchCount = FINDBUFLEN ;

        } while (!DosFindNext(Dir, FindBuf, FINDBUFLEN, &SearchCount)) ;

        DosFindClose(Dir) ;
    }

  > JdeBP <
___
 X MegaMail 2.10 #0:
--- Maximus/2 3.00
* Origin: DoNoR/2,Woking UK (44-1483-725167) (2:440/4)
SEEN-BY: 270/101 620/243 711/401 409 410 413 430 808 809 934 955 712/407 515
SEEN-BY: 712/517 628 713/888 800/1 7877/2809
@PATH: 440/4 141/209 270/101 712/515 711/808 809 934

SOURCE: echomail via fidonet.ozzmosis.com

Email questions or comments to sysop@ipingthereforeiam.com
All parts of this website painstakingly hand-crafted in the U.S.A.!
IPTIA BBS/MUD/Terminal/Game Server List, © 2025 IPTIA Consulting™.