DosQSysInfo

From EDM2
Revision as of 09:07, 24 November 2019 by Ak120 (Talk | contribs)

Jump to: navigation, search

This call returns values of static system variables.

Syntax

DosQSysInfo (Index, DataBuf, DataBufLen)

Parameters

Index (USHORT) - input 
Ordinal of the system variable to return.
Index = 0 indicates maximum path length. The maximum path length is returned in the first word of the DataBuf.
DataBuf (PBYTE) - output 
Address where the system returns the variable value.
DataBufLen (USHORT) - input 
Length of the data buffer.

Return Code

rc (USHORT) - return
Return code descriptions include:
  • 0 NO_ERROR
  • 87 ERROR_INVALID_PARAMETER
  • 111 ERROR_BUFFER_OVERFLOW

Remarks

An OS/2 application may want to reference file objects managed by an installable file system that supports long file names. Because some installable file systems may support longer names than others, an application should issue DosQSysInfo upon initialization.

DosQSysInfo returns the maximum path length supported by the file system currently installed. The path length includes the drive specifier (d:), the leading "\" and the trailing null character.

The value returned by DosQSysInfo can be used to allocate buffers for storing path names returned by requests, for example, to DosFindFirst and DosFindNext.

Bindings

C

#define INCL_DOSFILEMGR

USHORT  rc = DosQSysInfo(Index, DataBuf, DataBufLen);

USHORT   Index;         /* Which variable */
PBYTE    DataBuf;       /* System information (returned) */
USHORT   DataBufLen;    /* Data buffer size */

USHORT   rc;            /* return code */

MASM

EXTRN DosQSysInfo:FAR
INCL_DOSFILEMGR     EQU 1

PUSH   WORD  Index           ;Which variable
PUSH@  OTHER DataBuf         ;System information (returned)
PUSH   WORD  DataBufLen      ;Data buffer size
CALL   DosQSysInfo

Returns WORD