pInData (PVOID) - input
BYTE printerStatus;
BYTE deviceAlerts1;
BYTE deviceAlerts2;
BYTE cInputStatus;
BYTE InputId;
USHORT InputStatus;
BYTE cOutputStatus;
BYTE OutputId;
USHORT OutputStatus;
BYTE cJamAlerts;
BYTE JamLocationCode;
BYTE JamLocationID;
BYTE cOperatorAlerts;
BYTE OperatorAlertCode;
BYTE lOperatorAlertMsg;
CHAR OperatorAlertMsg[];
BYTE cWarningAlerts;
BYTE WarningAlertCode;
BYTE lWarningAlertMsg;
CHAR WarningAlertMsg[];
BYTE cServiceAlerts;
BYTE ServiceAlertCode;
BYTE lServiceAlertMsg;
CHAR ServiceAlertMsg[];
BYTE cConfigureAlerts;
BYTE ConfigureAlertCode;
BYTE lConfigureAlertMsg;
CHAR ConfigureAlertMsg[];
BYTE cSuppliesLevels;
BYTE SuppliesLocation;
BYTE SuppliesID;
USHORT SuppliesLevel;
BYTE cSuppliesAlerts;
BYTE SuppliesAlertCode;
BYTE lSuppliesAlertMsg;
CHAR SuppliesAlertMsg[];
BYTE cPrinterStatistics;
BYTE PrinterStatisticsCode;
ULONG PrinterStatisticsValue;
The specific flags and their values are listed below:
printerStatus
Overall printer status.
Bit
0
PRTSTATUS_PROTCNV_HAS_STATUS
- 0x01
Set if protocol converter can determine printer status. If clear, the remaining
bits do not reflect the printer state.
1
PRTSTATUS_POWER_ON
- 0x02
Power on initialization (0=No; 1=Yes)
2
PRTSTATUS_OFFLINE
- 0x04
Printer offline (0=No; 1=Yes)
3
PRTSTATUS_PRINTER_BUSY
- 0x08
Printer temporarily busy (0=No; 1=Yes)
4
PRTSTATUS_NOT_ACCEPTING_DATA
- 0x10
Unable to accept print job data (0=No; 1=Yes). If set, the spooler will
not send a print job to this printer.
5 - 7
deviceAlerts1
Active device alerts 1. For each
bit set, there is an active alert.
Bit
0
PRTSTATUS_DEV1_SUPPLY_ALERT
- 0x01
Printing supply alert
1
PRTSTATUS_DEV1_JAM_ALERT
- 0x02
Paper jam alert
2
PRTSTATUS_DEV1_OUTPUT_ALERT
- 0x04
Output alert
3
PRTSTATUS_DEV1_INPUT_ALERT
- 0x08
Input alert
4 - 7
deviceAlerts2
Active device alerts 2. For each
bit set, there is an active alert. 0
PRTSTATUS_DEV2_CONFIG_ALERT
- 0x01
Configuration change alert
1
PRTSTATUS_DEV2_WARNING_ALERT
- 0x02
Warnings alert
2
PRTSTATUS_DEV2_SERVICE_ALERT
- 0x03
Device service-required alert
3
PRTSTATUS_DEV2_OPERATOR_ALERT
- 0x04
Operator intervention-required alert
4 - 7
cInputStatus
Count of input status alerts that
follow. This value determines the number of times InputID and InputStatus
are repeated. If 0 (zero), these fields are not returned. InputID
Input identifier with this alert active.
InputStatus
Current status of input, as follows:
Bit
0 - 2
PRTSTATUS_LEVEL_MASK-0x0007
Current input level. All zeros indicate the input bin is empty.
3
PRTSTATUS_TRAY_MISSING - 0x0008
Tray missing (0=No; 1=Yes)
4
PRTSTATUS_BROKEN
- 0x0010
Unavailable/broken (0=No; 1=Yes)
5
PRTSTATUS_INOUT_BUSY
- 0x0020
Busy/temporarily unavailable (0=No; 1=Yes). Set when tray is allocated to
some other process.
6 - 14
15
PRTSTATUS_ALERT_ACTIVE
- 0x8000
Alert active (0=No; 1=Yes)
cOutputStatus
Count of output status alerts
that follow. This value determines the number of times OutputID and
OutputStatus are repeated. If 0 (zer0), these fields are not returned.
OutputID
Output identifier with
this alert active.
OutputStatus
Current
status of output, as follows:
Bit
0 - 2
PRTSTATUS_LEVEL_MASK
- 0x0007
Current output level. All zeros (0) indicate the output bin is empty. All
ones (1) indicates the output bin is full.
3
PRTSTATUS_TRAY_MISSING
- 0x0008
Tray missing (0=No; 1=Yes)
4
PRTSTATUS_BROKEN
- 0x0010
Unavailable/broken (0=No; 1=Yes)
5
PRTSTATUS_INOUT_BUSY
- 0x0020
Busy/temporarily unavailable (0=No; 1=Yes). Set when tray is allocated to
some other process.
6 - 14
15
PRTSTATUS_ALERT_ACTIVE
- 0x8000
Alert active (0=No; 1=Yes)
cJamAlerts
Count of printing-media-jam status
alerts that follow. This value determines the number of times JamLocationCode
and JamLocationID are repeated. If zero, these fields are not
returned. JamLocationCode
Indicates
general location of jam, as follows:
Bit
00
01
PRTSTATUS_JAM_CODE_INPUT
- 0x01
02
PRTSTATUS_JAM_CODE_OUTPUT
- 0x02
03
PRTSTATUS_JAM_CODE_INTERNAL
- 0x03
04
PRTSTATUS_JAM_CODE_DUPLEX
- 0x04
05
PRTSTATUS_JAM_CODE_EXTERNAL
- 0x05
06
PRTSTATUS_JAM_CODE_STACKER
- 0x06
07
PRTSTATUS_JAM_CODE_FINISHER
- 0x07
08
PRTSTATUS_JAM_CODE_MARKER
- 0x08
09
PRTSTATUS_JAM_CODE_LOG_UNIT
- 0x09
0A - FD
FE
PRTSTATUS_JAM_CODE_OTHER
- 0xFE
FF
PRTSTATUS_JAM_CODE_UNKNOWN
- 0xFF
JamLocationID
Identification
number of jam location. For example, if the jam occurred at an input, this
value would be the input ID. A value of hex 'FF' indicates the location
cannot be determined.
cOperatorAlerts
Count of operator alert messages
that follow. This value determines the number of times OperatorAlertCode,
lOperatorAlertMsg, and OperatorAlertMsg are repeated.
If zero, these fields are not returned. OperatorAlertCode
Defines the operator intervention reason, as follows: