pszPathName (PSZ) - input
Address of the ASCIIZ file specification of the
file or subdirectory.
Global file-name characters can be used in the name only for level 5 file
information.
DosQuerySysInfo is called by
an application during initialization to determine the maximum path length
allowed by the operating system.
ulInfoLevel (ULONG) - input
The level of path information required.
A value of 1, 2, 3, or 5 can be specified, as follows:
- FIL_STANDARD Level 1 file information
- FIL_QUERYEASIZE
Level 2 file information
- FIL_QUERYEASFROMLIST
Level 3 file information
- FIL_QUERYFULLNAME
Level 5 file information
Level 4 is reserved.
The structures described in pInfoBuf indicate the information returned
for each of these levels.
pInfoBuf (PVOID) - output
Address of the storage area containing the requested
level of path information.
Path information, where applicable, is based on the most recent DosClose,
DosResetBuffer, DosSetFileInfo,
or DosSetPathInfo.
Level 1 File Information (ulInfoLevel == FIL_STANDARD)
pInfoBuf
contains the FILESTATUS3 data
structure, in which path information is returned.
Level
2 File Information (ulInfoLevel == FIL_QUERYEASIZE)
pInfoBuf
contains the FILESTATUS4 data
structure. This is similar to the Level 1 structure, with the addition of
the cbList field after the attrFile field.
The cbList field is an unsigned ULONG
On output, this field contains the size, in bytes, of the file's entire
extended attribute (EA) set on disk. You can use this value to calculate
the size of the buffer required to hold the EA information returned when
a value of 3 is specified for ulInfoLevel. The buffer size is less
than or equal to twice the size of the file's entire EA set on disk.
Level
3 File Information (ulInfoLevel == FIL_QUERYEASFROMLIST)
This
is a subset of the EA information of the file.
Input
ulInfoLevel contains an EAOP2
data structure. fpGEA2List points to a GEA2
that defines the attribute names whose values are returned. The GEA2
data structures must be aligned on a doubleword boundary. Each oNextEntryOffset
field must contain the number of bytes from the beginning of the current
entry to the beginning of the next entry in the GEA2
list. The oNextEntryOffset field in the last entry of the GEA2
list must be zero. fpFEA2List points to a data area where the
relevant FEA2 list is returned.
The length field of this FEA2 list
is valid, giving the size of the FEA2
list buffer. oError is ignored.
Output
pInfoBuf is unchanged. If an error occurs,
oError points to the GEA2 entry
that caused the error. The buffer pointed to by fpFEA2List is filled
in with the returned information. If the buffer that fpFEA2List points
to is not large enough to hold the returned information (the return code
is ERROR_BUFFER_OVERFLOW), cbList is still valid, assuming there
is at least enough space for it. Its value is the size, in bytes, of the
file's entire EA set on disk, even though only a subset of attributes was
requested. The size of the buffer required to hold the EA information is
less than or equal to twice the size of the file's entire EA set on disk.
Level 5 File Information (ulInfoLevel
== FIL_QUERYFULLNAME)
Level 5 returns the fully
qualified ASCIIZ name of pszPathName in pInfoBuf. pszPathName
may contain global file-name characters.
cbInfoBuf (ULONG) - input
The length, in bytes, of pInfoBuf.
ulrc (APIRET) - returns
[Back]
[Next]