DrvEscape

ULONG DrvEscape(

    IN SURFOBJ  *pso,
   IN ULONG  iEsc,
   IN ULONG  cjIn,
   IN PVOID  *pvIn,
   IN ULONG  cjOut,
   OUT PVOID  *pvOut
  );

DrvEscape is used for retrieving information from a device that is not available in a device-independent device driver interface. The particular query depends on the value of the iEsc parameter. Drawing on the device is not allowed in this function. DrvDrawEscape is to be used for specialized drawing support.

Parameters

pso

Points to a SURFOBJ structure that describes the surface to which the call is directed.

iEsc

Specifies a query. The meaning of the other parameters depends on this value. ESC_QUERYESCSUPPORT is the only predefined value; it queries whether the driver supports a particular escape function. In this case, pvIn points to an escape function number; cjOut and pvOut are ignored. If the specified function is supported, the return value is nonzero.

cjIn

Specifies the size, in bytes, of the buffer pointed to by pvIn.

pvIn

Points to the input data for the call. The format of the input data depends on the query specified by the iEsc parameter.

cjOut

Specifies the size, in bytes, of the buffer pointed to by pvOut.

pvOut

Points to the output buffer. The format of the output data depends on the query specified by the iEsc parameter.

Return Value

The return value is dependent on the query specified by the iEsc parameter. If the function specified in the query is not supported, the return value is zero.

Comments

DrvEscape is optional for all drivers.

See Also

DrvDrawEscape, SURFOBJ