EnumForms fonction)

La fonction EnumForms énumère les formulaires pris en charge par l’imprimante spécifiée.

Syntaxe

BOOL EnumForms(
  _In_  HANDLE  hPrinter,
  _In_  DWORD   Level,
  _Out_ LPBYTE  pForm,
  _In_  DWORD   cbBuf,
  _Out_ LPDWORD pcbNeeded,
  _Out_ LPDWORD pcReturned
);

Paramètres

hPrinter [ dans]

Handle vers l’imprimante pour laquelle les formulaires doivent être énumérés. Utilisez la fonction OpenPrinter ou AddPrinter pour récupérer un handle d’imprimante.

De niveau [ dans]

Spécifie la version de la structure vers laquelle pForm pointe. Cette valeur doit être 1 ou 2.

pForm [ à]

Pointeur vers une ou plusieurs structures d' informations de formulaire _ _ 1 ou vers une ou plusieurs structures d' informations de formulaire _ _ 2 . Toutes les structures ont le même niveau.

cbBuf [ dans]

Spécifie la taille, en octets, de la mémoire tampon vers laquelle pForm pointe.

pcbNeeded [ à]

Pointeur vers une variable qui reçoit le nombre d’octets copiés dans le tableau vers lequel pForm pointe (si l’opération réussit) ou le nombre d’octets requis (en cas d’échec, car cbBuf est trop petit).

pcReturned [ à]

Pointeur vers une variable qui reçoit le nombre de structures copiées dans le tableau vers lequel pForm pointe.

Valeur retournée

Si la fonction est réussie, la valeur de retour est une valeur différente de zéro.

Si la fonction échoue, la valeur de retour est égale à zéro.

Remarques

Notes

Il s’agit d’une fonction de blocage ou synchrone qui peut ne pas être renvoyée immédiatement. La vitesse à laquelle cette fonction est retournée dépend des facteurs d’exécution tels que l’état du réseau, la configuration du serveur d’impression et les facteurs d’implémentation des pilotes 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 faire que l’application semble ne pas répondre.

Si l’appelant est distant et que le niveau est 2, la valeur StringType des structures d' informations de formulaire _ _ 2 retournées est toujours la chaîne _ LANGPAIR.

dans Windows Vista, les données de formulaire retournées par EnumForms sont récupérées à partir d’un cache local lorsque hPrinter fait référence à un serveur d’impression distant ou à une imprimante hébergée par un serveur d’impression et qu’il existe au moins une connexion ouverte à une imprimante sur le serveur d’impression distant. Dans toutes les autres configurations, les données du formulaire sont interrogées à partir du serveur d’impression distant.

Configuration requise

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
Winspool. h (inclure Windows. h)
Bibliothèque
Winspool. lib
DLL
Winspool. drv
Noms Unicode et ANSI
EnumFormsW (Unicode) et EnumFormsA (ANSI)

Voir aussi

Impression

Fonctions API du spouleur d’impression

AddPrinter

Informations de formulaire _ _ 1

OpenPrinter