Jump to content

DEVESC_QUERYESCSUPPORT

From EDM2
Revision as of 23:57, 11 July 2025 by Martini (talk | contribs) (Created page with "{{DISPLAYTITLE:DEVESC_QUERYESCSUPPORT}} GreEscape DEVESC_QUERYESCSUPPORT queries whether a particular escape code is implemented by the presentation driver. The presentation driver returns DEV_OK if the specified escape is supported. Refer to Dynamic Job Properties for related information. ;Simulation support: This function is mandatory for all drivers and must be implemented in order to have a valid OS/2 hardcopy driver. ==Syntax==  GreEscape(hdc, lEscape, cInCo...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

GreEscape DEVESC_QUERYESCSUPPORT queries whether a particular escape code is implemented by the presentation driver. The presentation driver returns DEV_OK if the specified escape is supported.

Refer to Dynamic Job Properties for related information.

Simulation support

This function is mandatory for all drivers and must be implemented in order to have a valid OS/2 hardcopy driver.

Syntax

 GreEscape(hdc, lEscape, cInCount, pInData, pcOutCount, pOutData, pInstance, lFunction);

Parameters

hdc (HDC) - input
Device context handle.
lEscape (LONG) - input
DEVESC_QUERYESCSUPPORT escape code.
cInCount (LONG) - input
Number of bytes pointed to by pInData.
pInData (PBYTE) - input
Pointer to an escape code value specifying the escape function to be checked.
pcOutCount (PLONG) - input
The handling routine ignores this parameter.
pOutData (PLONG) - input
The handling routine ignores this parameter.
pInstance (PVOID) - input
Pointer to instance data.
lFunction (ULONG) - input
High-order WORD=flags; low-order WORD=NGreEscape.

Returns

rc (LONG) - returns
Return Code.
The handling routine returns:
DEV_OK
Successful
DEVESC_NOTIMPLEMENTED
Escape not implemented for specified code
DEVESC_ERROR
Error

Remarks

Note: For an OD_QUEUED device with PM_Q_STD data, the spooler passes this escape on to the presentation driver without recording it.

This escape code is not metafiled or recorded.

Sample Source Code

Declaration:

#define INCL_GRE_DEVICE
#include <os2.h>

HDC       hdc;           /* Device context handle. */
LONG      lEscape;       /* DEVESC_QUERYESCSUPPORT escape code. */
LONG      cInCount;      /* Number of bytes pointed to by pInData. */
PBYTE     pInData;       /* Pointer to an escape code value specifying the escape function to be checked. */
PLONG     pcOutCount;    /* The handling routine ignores this parameter. */
PLONG     pOutData;      /* The handling routine ignores this parameter. */
PVOID     pInstance;     /* Pointer to instance data. */
ULONG     lFunction;     /* High-order WORD=flags; low-order WORD=NGreEscape. */
LONG      rc;            /* Return Code. */

rc = GreEscape(hdc, lEscape, cInCount, pInData,
        pcOutCount, pOutData, pInstance, lFunction);