Jump to content

DosQHandType

From EDM2
Revision as of 07:51, 10 January 2017 by Ak120 (talk | contribs) (Ak120 moved page OS2 API:CPI:LEGACY:DosQHandType to DosQHandType)

This is the legacy function. It is recommended to use: "DosQueryHType". [1]


Description

This call determines whether a handle references a file or a device.

Syntax

 DosQHandType

    (FileHandle, HandType, FlagWord)

Parameters

FileHandle (HFILE) - input
File handle.
HandType (PUSHORT) - output
Address of the value indicating the handle type. HandType is composed of two bytes:
Bit        Description
15        Network bit:
       0 = The handle refers to a local file, device, or pipe.
       1 = Means that the handle refers to a remote file, device, or pipe. 
14-8        Reserved.
7-0        HandleClass describes the handle class. It may take on the following values in the low byte of HandleType:
Value        Definition 
0        Handle is for a disk file
1        Handle is for a character device 
2        Handle is for a pipe.
 Values greater than 2 are reserved. 
   
FlagWord (PUSHORT) - output
Address of the device driver's attribute word if HandleType indicates a local character device.

Return Code

rc (USHORT) - return

Return code descriptions are:

  • 0 NO_ERROR
  • 6 ERROR_INVALID_HANDLE

Remarks

This function allows programs that are interactive or file-oriented to determine the source of their input. For example, CMD.EXE suppresses writing prompts if the input is from a disk file.

Example Code

C Binding

#define INCL_DOSFILEMGR

USHORT  rc = DosQHandType(FileHandle, HandType, FlagWord);

HFILE            FileHandle;    /* File handle */
PUSHORT          HandType;      /* Handle type (returned) */
PUSHORT          FlagWord;      /* Device driver attribute (returned) */

USHORT           rc;            /* return code */

MASM Binding

EXTRN  DosQHandType:FAR
INCL_DOSFILEMGR     EQU 1

PUSH   WORD    FileHandle    ;File handle
PUSH@  WORD    HandType      ;Handle type (returned)
PUSH@  WORD    FlagWord      ;Device driver attribute (returned)
CALL   DosQHandType

Returns WORD

Related Functions