Quelle est la plage valide pour les ID de travail d'impression sous Windows?

3

Cela fait un moment que j'essaie de chercher cela, mais je ne trouve pas de documentation MS qui détaille les identifiants de travail d'impression maximum et minimum valides pour Windows.

Est-ce que quelqu'un sait où que ce soit dans la documentation qui pourrait fournir cette information?

La raison pour laquelle je pose cette question est parce que j'ai besoin de savoir si 0 est un ID de travail d'impression valide. Je suppose que non, mais je n'ai pas vraiment de base pour cela!

Andy
la source
Vous programmez? Si tel est le cas, ajoutez quelque chose à la file d'attente, puis récupérez l'ID
Dave
Si je pose la question, c’est parce que j’obtiens un événement imprévu dans mon pilote d’imprimante, me donnant un identifiant de travail de 0. Je récupère ensuite le véritable identifiant de travail lors du prochain événement. Je me demande donc simplement si je peux compter sur 0 comme identifiant de travail non valide et jeter l'événement en fonction du travail ((ID == 0) => événement non valide). Je pense que j'aurais besoin de plus de confiance que de faire une hypothèse sur quelques identifiants valables retournés de quelques tirages. :)
Andy
Non, vous ne pouvez pas compter dessus - l'ID n'a rien à voir avec l'état. Cela peut aider: support.microsoft.com/kb/202480 ~ (Détermination de l'état de l'imprimante et de l'impression à partir de Visual Basic)
Dave
Mais comment obtenir le statut d'un travail d'impression inexistant? ;) Je pense que je pourrais essayer d’obtenir le travail d’impression, et s’il n’existe pas, je sais que cet identifiant est invalide. Je suppose que je me demandais simplement s'il existe une documentation qui signifie que je peux compter sur un ID de travail de 0 indiquant un événement non valide.
Andy
Mais un identifiant de travail de 0 ne signifie pas qu'il n'existe pas - il signifie qu'il est réel et heureux (ou malheureux)!
Dave

Réponses:

0

Répondu dans les commentaires de OP

Il (voir source ci-dessous) indique sous ID de travail que 0 indique un travail d'impression auquel aucun ID n'a encore été attribué. Donc, il existe, mais aucun identifiant ne lui a été attribué (identifiant 1 ou plus).

La source

Dave
la source
0

Selon la documentation de la classe Win32_PrintJob , la JobIdpropriété est a uint32, sa valeur peut donc être comprise entre 0 et 4 294 967 295 (2 32 -1). Des restrictions supplémentaires peuvent s'appliquer, cependant.

Ansgar Wiechers
la source
C'est la gamme représentable, qui ne sont pas toutes nécessairement valables. Comme un commentaire l'indique, vous pouvez obtenir jobID = 0 pour un travail non valide.
MSalters