$save nolist /* *============================================================================ * This program is distributed in the hope that it will be useful, but * WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE * * Permission to use for any purpose, modify, copy, and make enhancements * and derivative works of the software is granted if attribution is given to * R.M. Gillmore, dba the ACME Software Deli, as the author * * While the ACME Software Deli does not work for money, there is nonetheless * a significant amount of work involved. The ACME Software Deli maintains the * rights to all code written, though it may be used and distributed as long as * the following conditions are maintained. * * 1. The copyright statement at the top of each code block is maintained in * your distribution. * 2. You do not identify yourself as the ACME Software Deli * 3. Any changes made to the software are sent to the ACME Software Deli *============================================================================ */ $if not DOSFIND_EXT_INCLUDED $set (DOSFIND_EXT_INCLUDED) /* * $Id: dosFind.ext 1157 2025-05-05 00:35:39Z rmgillmore $ */ $include (..\lib\comnDefs.ext) declare dta_t literally ' structure ( findNextData (21) byte, fileFoundAttribute byte, timeStamp word, dateStamp word, fileSize dword, fileName (13) char )'; declare findDataRecordType literally ' structure ( fileAttr dword, creationTime qword, accessTime qword, modifiedTime qword, fileSize qword, reserved ( 8 ) byte, fullName ( MAX_PATH ) char, dosName ( 14 ) char, findHandle word, dtaData dta_t )'; declare ARCHIVE_BIT literally '0010$0000b', DIRECTORY_BIT literally '0001$0000b', VOLUME_BIT literally '0000$1000b', SYSTEM_BIT literally '0000$0100b', HIDDEN_BIT literally '0000$0010b', READONLY_BIT literally '0000$0001b'; $if not DOSFindSource findFirst: procedure ( fileNamePtr, findDataRecordPtr ) word external; declare fileNamePtr pointer, findDataRecordPtr pointer; end findFirst; findNext: procedure ( findDataRecordPtr ) word external; declare findDataRecordPtr pointer; end findNext; findClose: procedure ( findDataRecordPtr ) external; declare findDataRecordPtr pointer; end findClose; $endif $endif $restore