DosQFileMode: Difference between revisions
Appearance
mNo edit summary |
mNo edit summary |
||
(3 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
This call queries the mode (attribute) of the specified file. | This call queries the mode (attribute) of the specified file. | ||
==Syntax== | ==Syntax== | ||
DosQFileMode (FilePathName, CurrentAttribute, Reserved) | DosQFileMode (FilePathName, CurrentAttribute, Reserved) | ||
==Parameters== | ==Parameters== | ||
Line 10: | Line 8: | ||
:DosQSysInfo is called by an application during initialization to determine the maximum path length allowed by OS/2. | :DosQSysInfo is called by an application during initialization to determine the maximum path length allowed by OS/2. | ||
;CurrentAttribute (PUSHORT) - output : Address of the file's current attribute. | ;CurrentAttribute (PUSHORT) - output : Address of the file's current attribute. | ||
::15-6 - Reserved. | |||
::5 - File archive | |||
::4 - Subdirectory | |||
::3 - Reserved | |||
::2 - System file | |||
::1 - Hidden file | |||
::0 - Read only file | |||
:These bits can be set individually or in combination. For example, an attribute value of 0021H (bits 5 and 0 set to 1) indicates a read-only file that is archived. | |||
These bits can be set individually or in combination. For example, an attribute value of 0021H (bits 5 and 0 set to 1) indicates a read-only file that is archived. | ;Reserved (ULONG) - input : Reserved must be set to zero. | ||
; Reserved (ULONG) - input : Reserved must be set to zero. | |||
==Return Code== | ==Return Code== | ||
;rc (USHORT) - return:Return code descriptions are: | |||
Return code descriptions are: | *0 NO_ERROR | ||
* 0 | *2 ERROR_FILE_NOT_FOUND | ||
* 2 | *3 ERROR_PATH_NOT_FOUND | ||
* 3 | *26 ERROR_NOT_DOS_DISK | ||
* 26 | *87 ERROR_INVALID_PARAMETER | ||
* 87 | *108 ERROR_DRIVE_LOCKED | ||
* 108 | *206 ERROR_FILENAME_EXCED_RANGE | ||
* 206 | |||
==Remarks== | ==Remarks== | ||
The | The "Volume Label" type attribute is not returned by DosQFileMode. [[DosQFSInfo]] may be used for this purpose. | ||
== | ==Bindings== | ||
===C | ===C=== | ||
<PRE> | <PRE> | ||
#define INCL_DOSFILEMGR | #define INCL_DOSFILEMGR | ||
Line 42: | Line 38: | ||
USHORT rc = DosQFileMode(FilePathName, CurrentAttribute, Reserved); | USHORT rc = DosQFileMode(FilePathName, CurrentAttribute, Reserved); | ||
PSZ | PSZ FilePathName; /* File path name */ | ||
PUSHORT | PUSHORT CurrentAttribute; /* Data area (returned) */ | ||
ULONG | ULONG 0; /* Reserved (must be zero) */ | ||
USHORT | USHORT rc; /* return code */ | ||
</PRE> | </PRE> | ||
===MASM | ===MASM=== | ||
<PRE> | <PRE> | ||
EXTRN DosQFileMode:FAR | EXTRN DosQFileMode:FAR | ||
Line 61: | Line 57: | ||
Returns WORD | Returns WORD | ||
</PRE> | </PRE> | ||
[[Category: | [[Category:Dos16]] |
Latest revision as of 06:10, 26 January 2020
This call queries the mode (attribute) of the specified file.
Syntax
DosQFileMode (FilePathName, CurrentAttribute, Reserved)
Parameters
- FilePathName (PSZ) - input
- Address of the file path name.
- DosQSysInfo is called by an application during initialization to determine the maximum path length allowed by OS/2.
- CurrentAttribute (PUSHORT) - output
- Address of the file's current attribute.
- 15-6 - Reserved.
- 5 - File archive
- 4 - Subdirectory
- 3 - Reserved
- 2 - System file
- 1 - Hidden file
- 0 - Read only file
- These bits can be set individually or in combination. For example, an attribute value of 0021H (bits 5 and 0 set to 1) indicates a read-only file that is archived.
- Reserved (ULONG) - input
- Reserved must be set to zero.
Return Code
- rc (USHORT) - return
- Return code descriptions are:
- 0 NO_ERROR
- 2 ERROR_FILE_NOT_FOUND
- 3 ERROR_PATH_NOT_FOUND
- 26 ERROR_NOT_DOS_DISK
- 87 ERROR_INVALID_PARAMETER
- 108 ERROR_DRIVE_LOCKED
- 206 ERROR_FILENAME_EXCED_RANGE
Remarks
The "Volume Label" type attribute is not returned by DosQFileMode. DosQFSInfo may be used for this purpose.
Bindings
C
#define INCL_DOSFILEMGR USHORT rc = DosQFileMode(FilePathName, CurrentAttribute, Reserved); PSZ FilePathName; /* File path name */ PUSHORT CurrentAttribute; /* Data area (returned) */ ULONG 0; /* Reserved (must be zero) */ USHORT rc; /* return code */
MASM
EXTRN DosQFileMode:FAR INCL_DOSFILEMGR EQU 1 PUSH@ ASCIIZ FilePathName ;File path name PUSH@ WORD CurrentAttribute ;Data area (returned) PUSH DWORD 0 ;Reserved (must be zero) CALL DosQFileMode Returns WORD