Jump to content

Sys2Open

From EDM2
Revision as of 04:05, 10 January 2016 by Martini (talk | contribs) (Created page with "==Description== Opens a file or other stream; files larger than 2GB are supported (this function is a wrapper to DosOpenL). Direct-DASD mode is not supported by this function...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Description

Opens a file or other stream; files larger than 2GB are supported (this function is a wrapper to DosOpenL). Direct-DASD mode is not supported by this function, nor is setting the initial extended attributes.

Arguments

REXX ARGUMENTS:

 1. Name of file or stream to open.                           (REQUIRED)
 2. Open action flags, must be either "O" (open if exists), "R" (replace
    if exists), or nothing (fail if exists), optionally followed by "C"
    (create if file does not exist).  If "C" is not specified, the
    operation will fail if the file does not exist.  Note that a value
    of "" alone will therefore fail automatically.        (DEFAULT: "O")
    In summary, the possible combinations are:
      O = Open only (if file exists, open it; if not, fail)
      OC= Open/create (if file exists, open it; if not, create it)
      R = Replace only (if file exists, replace it; if not, fail)
      RC= Replace/create (if file exists, replace it; if not, create it)
      C = Create only (if file exists, fail; if not, create it)
      (empty) = No-op (if file exists, fail; if not, fail)
 3. Access mode flags, one or both of:                   (DEFAULT: "RW")
      R = Open file with read access.
      W = Open file with write access.
 4. Sharing mode flags, any combination of:               (DEFAULT: "W")
      R = Deny read access to other processes
      W = Deny write access to other processes
 5. Deny legacy DosOpen access, one of:
      0 = Allow DosOpen to access the file                     (DEFAULT)
      1 = Deny access using the DosOpen API
 6. Privacy/inheritance flag, one of:
      0 = The file handle is inherited by child processes.     (DEFAULT)
      1 = The file handle is private to the current process.
 7. Initial file attributes when creating a file:          (DEFAULT: "")
      A = Archive attribute set
      D = Directory attribute set
      S = System attribute set
      H = Hidden attribute set
      R = Read-only attribute set
 8. Initial file size when creating or replacing a file; ignored if
    access mode is read-only.                               (DEFAULT: 0)
 9. I/O mode flags, any or all of:                         (DEFAULT: "")
     T = Write-through mode (default is normal write)
     N = No-cache mode (default is to use filesystem cache)
     S = Sequential access
     R = Random access
        * S and R can combine as follows:
            Neither: No locality known (default)
            S only:  Mainly sequential access
            R only:  Mainly random access
            Both:    Random/sequential (i.e. random with some locality)

Return Value

REXX RETURN VALUE:

 File handle, or "" in case of error.