unsigned LocalFindFirst( char *pattern, void *info, unsigned info_len, int attrib ) /*********************************************************************************/ { unsigned rc; rc = _dos_findfirst( pattern, attrib, &Findbuf ); if( rc ) return( StashErrCode( rc , OP_LOCAL ) ); makeDOSDTA( &Findbuf, info ); return( 0 ); }
unsigned LocalFindFirst( char *pattern, void *info, unsigned info_len, int attrib ) /*****************************************************************************/ { FILEFINDBUF dta; HDIR handle = 1; USHORT count = 1; unsigned err; info_len = info_len; err = DosFindFirst( pattern, &handle, attrib, &dta, sizeof( dta ), &count,0); if( err != 0 ) return( StashErrCode( err, OP_LOCAL ) ); makeDOSDTA( &dta, info ); return( 0 ); }
unsigned LocalFindNext( void *info, unsigned info_len ) /*****************************************************/ { unsigned rc; rc = _dos_findnext( &Findbuf ); if( !rc ) { makeDOSDTA( &Findbuf, info ); return( 0 ); } else { _dos_findclose( &Findbuf ); return( -1 ); } }
unsigned LocalFindNext( void *info, unsigned info_len ) /*************************************************/ { FILEFINDBUF dta; USHORT count = 1; unsigned rc; info_len = info_len; rc = DosFindNext( 1, &dta, sizeof( dta ), &count ); if( rc != 0 ) return( StashErrCode( rc, OP_LOCAL ) ); if( count == 0 ) { DosFindClose( 1 ); return( -1 ); } makeDOSDTA( &dta, info ); return( 0 ); }
int LocalFindNext( void *info, unsigned info_len ) /************************************************/ { #ifdef _M_I86 FILEFINDBUF dta; #else FILEFINDBUF3 dta; #endif APIRET count = 1; APIRET rc; info_len = info_len; rc = DosFindNext( 1, &dta, sizeof( dta ), &count ); if( rc != 0 ) return( -1 ); if( count == 0 ) { DosFindClose( 1 ); return( -1 ); } makeDOSDTA( &dta, info ); return( 0 ); }
error_handle LocalFindFirst( const char *pattern, void *info, unsigned info_len, int attrib ) /*******************************************************************************************/ { #ifdef _M_I86 FILEFINDBUF dta; #else FILEFINDBUF3 dta; #endif HDIR handle = 1; APIRET count = 1; APIRET err; info_len = info_len; #ifdef _M_I86 err = DosFindFirst( pattern, &handle, attrib, &dta, sizeof( dta ), &count,0); #else err = DosFindFirst( pattern, &handle, attrib, &dta, sizeof( dta ), &count, FIL_STANDARD ); #endif if( err != 0 ) return( StashErrCode( err, OP_LOCAL ) ); makeDOSDTA( &dta, info ); return( 0 ); }