Fonction EnumJobs
La fonction EnumJobs récupère des informations sur un ensemble spécifié de travaux d’impression pour une imprimante spécifiée.
Syntaxe
BOOL EnumJobs(
_In_ HANDLE hPrinter,
_In_ DWORD FirstJob,
_In_ DWORD NoJobs,
_In_ DWORD Level,
_Out_ LPBYTE pJob,
_In_ DWORD cbBuf,
_Out_ LPDWORD pcbNeeded,
_Out_ LPDWORD pcReturned
);
Paramètres
-
hPrinter [in]
-
Handle de l’objet d’imprimante dont la fonction énumère les travaux d’impression. Utilisez la fonction OpenPrinter ou AddPrinter pour récupérer un handle d’imprimante.
-
FirstJob [in]
-
Position de base zéro dans la file d’attente d’impression du premier travail d’impression à énumérer. Par exemple, la valeur 0 spécifie que l’énumération doit commencer au premier travail d’impression dans la file d’attente d’impression ; La valeur 9 spécifie que l’énumération doit commencer au dixième travail d’impression dans la file d’attente d’impression.
-
NoJobs [in]
-
Nombre total de travaux d’impression à énumérer.
-
Niveau [in]
-
Type d’informations retournées dans la mémoire tampon pJob .
Valeur Signification - 1
pJob reçoit un tableau de structures JOB_INFO_1 - 2
pJob reçoit un tableau de structures JOB_INFO_2 - 3
pJob reçoit un tableau de structures JOB_INFO_3 -
pJob [out]
-
Pointeur vers une mémoire tampon qui reçoit un tableau de structures JOB_INFO_1, JOB_INFO_2 ou JOB_INFO_3 . La mémoire tampon doit être suffisamment grande pour recevoir le tableau de structures et toutes les chaînes ou autres données vers lesquelles pointent les membres de la structure.
Pour déterminer la taille de mémoire tampon requise, appelez EnumJobs avec cbBuf défini sur zéro. EnumJobs échoue, GetLastError retourne ERROR_INSUFFICIENT_BUFFER et le paramètre pcbNeeded retourne la taille, en octets, de la mémoire tampon requise pour contenir le tableau des structures et leurs données.
-
cbBuf [in]
-
Taille, en octets, de la mémoire tampon pJob .
-
pcbNeeded [out]
-
Pointeur vers une variable qui reçoit le nombre d’octets copiés si la fonction réussit. Si la fonction échoue, la variable reçoit le nombre d’octets requis.
-
pcReturned [out]
-
Pointeur vers une variable qui reçoit le nombre de structures JOB_INFO_1, JOB_INFO_2 ou JOB_INFO_3 retournées dans la mémoire tampon pJob .
Valeur retournée
Si la fonction réussit, la valeur de retour est une valeur différente de zéro.
Si la fonction échoue, la valeur de retour est égale à zéro.
Notes
Notes
Il s’agit d’une fonction bloquante ou synchrone qui peut ne pas être retournée immédiatement. La rapidité avec laquelle cette fonction retourne dépend de facteurs d’exécution tels que l’status réseau, la configuration du serveur d’impression et les facteurs d’implémentation du pilote d’imprimante qui sont difficiles à prédire lors de l’écriture d’une application. L’appel de cette fonction à partir d’un thread qui gère l’interaction avec l’interface utilisateur peut donner l’impression que l’application ne répond pas.
La structure JOB_INFO_1 contient des informations générales sur les travaux d’impression ; la structure JOB_INFO_2 contient des informations beaucoup plus détaillées. La structure JOB_INFO_3 contient des informations sur la façon dont les travaux sont liés.
Pour déterminer le nombre de travaux d’impression dans la file d’attente de l’imprimante, appelez la fonction GetPrinter avec le paramètre Level défini sur 2.
Spécifications
Condition requise | Valeur |
---|---|
Client minimal pris en charge |
Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge |
Windows 2000 Server [applications de bureau uniquement] |
En-tête |
|
Bibliothèque |
|
DLL |
|
Noms Unicode et ANSI |
EnumJobsW (Unicode) et EnumJobsA (ANSI) |