Returns a filename (or subdirectory) entry from a specified named or DOS directory.
CALL rq$s$get$directory$entry (dir_name_ptr, entry_num, name_ptr, except_ptr);
rq_s_get_directory_entry (dir_name_ptr, entry_num, name_ptr, except_ptr);
| Parameter | PL/M Data Type | C Data Type |
| dir_name_ptr | POINTER | STRING far * |
| entry_num | WORD_16 | UINT_16 |
| name_ptr | POINTER | STRING far * |
| except_ptr | POINTER to WORD_16 | UINT_16 far * |
dir_name_ptr
A pointer to a STRING containing the directory pathname. This pathname can be up to 255 characters long.
entry_num
The entry number of the desired filename. Entries are numbered sequentially starting from 0. The E_EMPTY_ENTRY condition code returns if there is no directory entry associated with the number.
name_ptr
A pointer to a STRING locating the entry name specified by entry_num. This name has a maximum length of 14 bytes. The filename is left-justified and padded with blanks to the right.
except_ptr
A pointer to a variable declared by the application where the call returns a condition code.
The calling task must have list (read) access to the designated directory. The DOS World user always has read (list) access to DOS files and directories; write (delete, append, update, add-entry and change-entry) access is optional.
The alternative to this call is to open and read a directory file.
S_get_directory_entry is not supported for iRMX-NET remote directories. Use BIOS calls a_open, a_read, or s_open, and s_read_move.
| E_OK | 0000H | No exceptional conditions occurred. |
| E_DIR_END | 0025H | The entry_num parameter is greater than the number of entries in the directory. |
| E_EMPTY_ENTRY | 0024H | The file entry designated in the call is empty. |
| E_FACCESS | 0026H | The caller's default user object is not qualified for list access to the directory. |
| E_FTYPE | 0027H | The specified connection does not refer to a directory. |
| E_IFDR | 002FH | One of these is true:
·This system call applies only to named and DOS directories, but the STRING pointed to by dir_name_ptr specifies another type of file. ·This system call is not supported for remote files. |
| E_IO | 002BH | An I/O error occurred that might have prevented the operation from completing. |
| E_LIMIT | 0004H | The calling task's job has reached its object limit. |
| E_MEM | 0002H | The memory available to the calling task's job is not sufficient to complete this call. |
| E_NOT_CONFIGURED | 0008H | This system call is not part of the present configuration. |