s_get_directory_entry

Returns a filename (or subdirectory) entry from a specified named or DOS directory.

Syntax, PL/M and C

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 *

Parameters

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.

Additional Information

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.

Condition Codes

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.