DosQFileMode: Difference between revisions
Appearance
No edit summary |
mNo edit summary |
||
Line 12: | Line 12: | ||
: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. | ||
'''Bit | '''Bit Description''' | ||
15-6 | 15-6 Reserved. | ||
5 | 5 File archive | ||
4 | 4 Subdirectory | ||
3 | 3 Reserved | ||
2 | 2 System file | ||
1 | 1 Hidden file | ||
0 | 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. | ||
Line 26: | Line 26: | ||
rc (USHORT) - return | rc (USHORT) - return | ||
Return code descriptions are: | Return code descriptions are: | ||
* 0 | * 0 NO_ERROR | ||
* 2 | * 2 ERROR_FILE_NOT_FOUND | ||
* 3 | * 3 ERROR_PATH_NOT_FOUND | ||
* 26 | * 26 ERROR_NOT_DOS_DISK | ||
* 87 | * 87 ERROR_INVALID_PARAMETER | ||
* 108 | * 108 ERROR_DRIVE_LOCKED | ||
* 206 | * 206 ERROR_FILENAME_EXCED_RANGE | ||
==Remarks== | ==Remarks== | ||
The | The "Volume Label" type attribute is not returned by DosQFileMode. [[DosQFSInfo]] may be used for this purpose. | ||
==Example Code== | ==Example Code== | ||
Line 44: | Line 44: | ||
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> | ||
Line 63: | Line 63: | ||
Returns WORD | Returns WORD | ||
</PRE> | </PRE> | ||
[[Category:Dos]] | [[Category:Dos]] |
Revision as of 22:51, 5 November 2017
![]() | |
---|---|
It is recommended to use a newer replacement for this function. | |
Replacement: | DosQueryFileMode |
Remarks: | This function was renamed to DosQueryFileMode on OS/2 2.0. |
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.
Bit Description 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.
Example Code
C Binding
#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 Binding
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