Jump to content

DosQFileMode: Difference between revisions

From EDM2
No edit summary
Ak120 (talk | contribs)
mNo edit summary
 
(5 intermediate revisions by 2 users not shown)
Line 1: Line 1:
[[image:legacy.png]]
This function has been renamed to "[[OS2_API:CPI:DosQueryFileMode|DosQueryFileMode]]". [https://books.google.com.ec/books?id=u7WbsmbttwYC&pg=PT372&lpg=PT372&dq#v=onepage&q&f=false]
==Description==
This call queries the mode (attribute) of the specified file.
This call queries the mode (attribute) of the specified file.


==Syntax==
==Syntax==
<PRE>
  DosQFileMode (FilePathName, CurrentAttribute, Reserved)
  DosQFileMode


    (FilePathName, CurrentAttribute, Reserved)
</PRE>
==Parameters==
==Parameters==
; FilePathName (PSZ) - input : Address of the file path name.
;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.  
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.
; CurrentAttribute (PUSHORT) - output : Address of the file's current attribute.
::5 - File archive
 
::4 - Subdirectory
'''Bit        Description'''
::3 - Reserved
15-6       Reserved.
::2 - System file
5       File archive  
::1 - Hidden file
4       Subdirectory  
::0 - Read only file
3       Reserved.
: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.
2       System file  
;Reserved (ULONG) - input : Reserved must be set to zero.
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==
==Return Code==
rc (USHORT) - return
;rc (USHORT) - return:Return code descriptions are:
 
*0 NO_ERROR
Return code descriptions are:
*2 ERROR_FILE_NOT_FOUND
 
*3 ERROR_PATH_NOT_FOUND
* 0         NO_ERROR  
*26 ERROR_NOT_DOS_DISK
* 2         ERROR_FILE_NOT_FOUND  
*87 ERROR_INVALID_PARAMETER
* 3         ERROR_PATH_NOT_FOUND  
*108 ERROR_DRIVE_LOCKED
* 26       ERROR_NOT_DOS_DISK  
*206 ERROR_FILENAME_EXCED_RANGE
* 87       ERROR_INVALID_PARAMETER  
* 108       ERROR_DRIVE_LOCKED  
* 206       ERROR_FILENAME_EXCED_RANGE


==Remarks==
==Remarks==
The `Volume Label' type attribute is not returned by DosQFileMode. DosQFSInfo may be used for this purpose.  
The "Volume Label" type attribute is not returned by DosQFileMode. [[DosQFSInfo]] may be used for this purpose.


==Example Code==
==Bindings==
===C Binding===
===C===
<PRE>
<PRE>
#define INCL_DOSFILEMGR
#define INCL_DOSFILEMGR
Line 55: Line 38:
USHORT  rc = DosQFileMode(FilePathName, CurrentAttribute, Reserved);
USHORT  rc = DosQFileMode(FilePathName, CurrentAttribute, Reserved);


PSZ             FilePathName;    /* File path name */
PSZ     FilePathName;    /* File path name */
PUSHORT         CurrentAttribute; /* Data area (returned) */
PUSHORT CurrentAttribute; /* Data area (returned) */
ULONG           0;                /* Reserved (must be zero) */
ULONG   0;                /* Reserved (must be zero) */


USHORT           rc;              /* return code */
USHORT rc;              /* return code */
</PRE>
</PRE>


===MASM Binding===
===MASM===
<PRE>
<PRE>
EXTRN  DosQFileMode:FAR
EXTRN  DosQFileMode:FAR
Line 74: Line 57:
Returns WORD
Returns WORD
</PRE>
</PRE>
==Related Functions==
*


[[Category:The OS/2 API Project]]
[[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