Каков допустимый диапазон для идентификаторов заданий на печать в Windows?

3

Я пытался найти это некоторое время, но не могу найти документацию MS, в которой подробно описаны максимальные и минимальные допустимые идентификаторы заданий на печать для окон.

Кто-нибудь знает документацию где-нибудь, которая может предоставить эту информацию?

Причина, по которой я спрашиваю, заключается в том, что мне нужно знать, является ли 0 действительным идентификатором задания на печать. Я предполагаю, что нет, но мне не на чем основывать это!

Andy
источник
Ты программируешь? Если это так, добавьте что-то в очередь, а затем получите идентификатор
Dave
Ну, причина, по которой я спрашиваю, в том, что у меня возникла ситуация, когда в драйвере принтера я получаю неожиданное событие, давая мне идентификатор задания 0. Затем я получаю истинный идентификатор задания в следующем событии. Поэтому мне просто интересно, могу ли я полагаться на 0, являющийся недопустимым идентификатором задания, и выбрасывать событие на основании задания ((ID == 0) = & gt; недействительное событие). Я думаю, что мне нужно больше уверенности, чем делать предположения о нескольких действительных идентификаторах, возвращенных из нескольких отпечатков. :)
Andy
Нет, на это нельзя полагаться - удостоверение личности не имеет никакого отношения к государству. Это может помочь: support.microsoft.com/kb/202480 ~ (Это как определить состояние принтера и состояние задания на печать из Visual Basic)
Dave
Но как вы можете получить статус задания на печать, которого не существует? ;) Думаю, я мог бы попытаться получить задание на печать, и если его не существует, я знаю, что это неверный идентификатор задания. Я думаю, мне просто интересно, есть ли документация, которая может означать, что я могу полагаться на идентификатор задания 0, указывающий на недопустимое событие.
Andy
Но идентификатор работы 0 не означает, что он не существует - это означает, что он живой и счастливый (или несчастный)!
Dave

Ответы:

0

Ответил в комментариях ОП

Это (см. Источник ниже) говорит под идентификатором задания, что 0 указывает на задание на печать, которому еще не был присвоен идентификатор. Таким образом, он существует, но ему не был присвоен идентификатор (идентификатор от 1 или более).

Источник

Dave
источник
0

Согласно документации для Win32_PrintJob класс, JobId собственность uint32поэтому его значение может варьироваться от 0 до 4 294 967 295 (2 32 -1). Однако могут применяться дополнительные ограничения.

Ansgar Wiechers
источник
Это представимый диапазон, не все из которых являются действительными. Как говорится в комментарии, вы можете получить jobID = 0 для недействительной работы.
MSalters