SplQmGetJobID: Difference between revisions
Appearance
Created page with "This function returns the spooler print job ID for the spool file handle. This function allows Presentation drivers (or applications) to get the spooler print job ID while s..." |
mNo edit summary |
||
Line 1: | Line 1: | ||
This function returns the spooler print job ID for the spool file handle. | This function returns the spooler print job ID for the spool file handle. | ||
This function allows Presentation drivers (or applications) to get the spooler print job ID while still spooling the job. Currently, only SplQmEndDoc will return the spooler print job ID. | This function allows Presentation drivers (or applications) to get the spooler print job ID while still spooling the job. Currently, only SplQmEndDoc will return the spooler print job ID. | ||
SplQmGetJobID will return an error if called after SplQmEndDoc and before the next SplQmStartDoc because the spool file handle does not reference a spool job after SplQmEndDoc. | SplQmGetJobID will return an error if called after SplQmEndDoc and before the next SplQmStartDoc because the spool file handle does not reference a spool job after SplQmEndDoc. | ||
==Syntax== | ==Syntax== | ||
rc = SplQmGetJobID(hspl, ulLevel, pBuf, cbBuf, pcbNeeded) | rc = SplQmGetJobID(hspl, ulLevel, pBuf, cbBuf, pcbNeeded) | ||
==Parameters== | ==Parameters== | ||
; hspl (HSPL) - input | ; hspl (HSPL) - input: Spool file handle returned by SplQmOpen. | ||
: Spool file handle returned by SplQmOpen. | ; ulLevel (ULONG) - input: Level of job information; currently, level 0 is supported. | ||
; pBuf (PVOID) - output: Buffer to receive job information. | |||
Level 0 will return the QMJOBINFO data structure. See QMJOBINFO in Data Types for details on this data structure. | |||
; cbBuf (ULONG) - input: Length of pBuf, in bytes. | |||
; pcbNeeded (PULONG) - output: Receives length, in bytes, of buffer needed to store job information. | |||
==Return Code== | ==Return Code== | ||
; rc (ULONG) - returns: Return codes. | |||
* 0 Success | |||
* ERROR_INVALID_HANDLE(6) Invalid handle given. | |||
* ERROR_INVALID_PARAMETER(87) ulLevel not 0 or invalid parameter given. | |||
* ERROR_MORE_DATA(234) Part of the information requested was returned, but there was not enough room for all the data. The *pcbOutData parameter contains the size of buffer needed to retrieve all the query response data. | |||
* 0 | * ERROR_NOT_SUPPORTED(50) This function is not supported by the print server processing the spool job. | ||
Success | * NERR_BufTooSmall(2123) No information was returned because the output buffer was too small. *pcbOutData contains the size of buffer needed to retrieve all the query response data. | ||
* ERROR_INVALID_HANDLE(6) | * NERR_JobNotFound(2151) No spooler job found. | ||
Invalid handle given. | |||
* ERROR_INVALID_PARAMETER(87) | |||
ulLevel not 0 or invalid parameter given. | |||
* ERROR_MORE_DATA(234) | |||
Part of the information requested was returned, but there was not enough room for all the data. The *pcbOutData parameter contains the size of buffer needed to retrieve all the query response data. | |||
* ERROR_NOT_SUPPORTED(50) | |||
This function is not supported by the print server processing the spool job. | |||
* NERR_BufTooSmall(2123) | |||
No information was returned because the output buffer was too small. *pcbOutData contains the size of buffer needed to retrieve all the query response data. | |||
* NERR_JobNotFound(2151) | |||
No spooler job found. | |||
==Example Code== | ==Example Code== | ||
Line 59: | Line 40: | ||
ULONG rc; /* Return codes. */ | ULONG rc; /* Return codes. */ | ||
rc = SplQmGetJobID(hspl, ulLevel, pBuf, cbBuf, | rc = SplQmGetJobID(hspl, ulLevel, pBuf, cbBuf, pcbNeeded); | ||
</PRE> | </PRE> | ||
[[Category:Spl]] | [[Category:Spl]] |
Latest revision as of 20:17, 2 July 2023
This function returns the spooler print job ID for the spool file handle.
This function allows Presentation drivers (or applications) to get the spooler print job ID while still spooling the job. Currently, only SplQmEndDoc will return the spooler print job ID.
SplQmGetJobID will return an error if called after SplQmEndDoc and before the next SplQmStartDoc because the spool file handle does not reference a spool job after SplQmEndDoc.
Syntax
rc = SplQmGetJobID(hspl, ulLevel, pBuf, cbBuf, pcbNeeded)
Parameters
- hspl (HSPL) - input
- Spool file handle returned by SplQmOpen.
- ulLevel (ULONG) - input
- Level of job information; currently, level 0 is supported.
- pBuf (PVOID) - output
- Buffer to receive job information.
Level 0 will return the QMJOBINFO data structure. See QMJOBINFO in Data Types for details on this data structure.
- cbBuf (ULONG) - input
- Length of pBuf, in bytes.
- pcbNeeded (PULONG) - output
- Receives length, in bytes, of buffer needed to store job information.
Return Code
- rc (ULONG) - returns
- Return codes.
- 0 Success
- ERROR_INVALID_HANDLE(6) Invalid handle given.
- ERROR_INVALID_PARAMETER(87) ulLevel not 0 or invalid parameter given.
- ERROR_MORE_DATA(234) Part of the information requested was returned, but there was not enough room for all the data. The *pcbOutData parameter contains the size of buffer needed to retrieve all the query response data.
- ERROR_NOT_SUPPORTED(50) This function is not supported by the print server processing the spool job.
- NERR_BufTooSmall(2123) No information was returned because the output buffer was too small. *pcbOutData contains the size of buffer needed to retrieve all the query response data.
- NERR_JobNotFound(2151) No spooler job found.
Example Code
#define INCL_SPL #define INCL_SPLBIDI #include <os2.h> HSPL hspl; /* Spool file handle returned by SplQmOpen. */ ULONG ulLevel; /* Level of job information; currently, level 0 is supported. */ PVOID pBuf; /* Buffer to receive job information. */ ULONG cbBuf; /* Length of pBuf, in bytes. */ PULONG pcbNeeded; /* Receives length, in bytes, of buffer needed to store job information. */ ULONG rc; /* Return codes. */ rc = SplQmGetJobID(hspl, ulLevel, pBuf, cbBuf, pcbNeeded);