I'm trying to capture the printer job details, and my program is working fine, except on one machine. The value returned by Data.NotifyData.adwData[0] is 8208(in Decimal) and it doesn't match with any of the predefined values, I searched about this and couldn't find any info, and the GetLastError returned a 0.
PRINTER_NOTIFY_INFO_DATA &Data = pNotification->aData[x];
if( Data.Type == JOB_NOTIFY_TYPE )
{
switch( Data.Field )
{
case JOB_NOTIFY_FIELD_STATUS:
printf("Case:JOB_NOTIFY_FIELD_STATUS,adwData[0]:%x\n",Data.NotifyData.adwData[0]);
if(Data.NotifyData.adwData[0] == JOB_STATUS_SPOOLING)
{
//SetEvent
}
if(Data.NotifyData.adwData[0] == JOB_STATUS_PRINTING)
{
//SetEvent
}
break;
}
}