Fonction EnumPrinterDataEx
La fonction EnumPrinterDataEx énumère tous les noms de valeurs et les données d’une imprimante et d’une clé spécifiées.
Les données d’imprimante sont stockées dans le Registre. Lors de l’énumération des données d’imprimante, n’appelez pas les fonctions du Registre susceptibles de modifier les données.
Syntaxe
DWORD EnumPrinterDataEx(
_In_ HANDLE hPrinter,
_In_ LPCTSTR pKeyName,
_Out_ LPBYTE pEnumValues,
_In_ DWORD cbEnumValues,
_Out_ LPDWORD pcbEnumValues,
_Out_ LPDWORD pnEnumValues
);
Paramètres
-
hPrinter [in]
-
Handle de l’imprimante pour laquelle la fonction récupère les données de configuration. Utilisez la fonction OpenPrinter ou AddPrinter pour récupérer un handle d’imprimante.
-
pKeyName [in]
-
Pointeur vers une chaîne terminée par null qui spécifie la clé contenant les valeurs à énumérer. Utilisez le caractère barre oblique inverse ( \ ) comme délimiteur pour spécifier un chemin d’accès avec une ou plusieurs sous-clés. EnumPrinterDataEx énumère toutes les valeurs de la clé, mais n’énumère pas les valeurs des sous-clés de la clé spécifiée. Utilisez la fonction EnumPrinterKey pour énumérer les sous-clés.
Si pKeyName a la valeur NULL ou une chaîne vide, EnumPrinterDataEx retourne ERROR_INVALID_PARAMETER.
-
pEnumValues [out]
-
Pointeur vers une mémoire tampon qui reçoit un tableau de structures PRINTER_ENUM_VALUES . Chaque structure contient le nom de la valeur, le type, les données et les tailles d’une valeur sous la clé.
-
cbEnumValues [in]
-
Taille, en octets, de la mémoire tampon pointée vers par pcbEnumValues. Si vous définissez cbEnumValues sur zéro, le paramètre pcbEnumValues retourne la taille de mémoire tampon requise.
-
pcbEnumValues [out]
-
Pointeur vers une variable qui reçoit la taille, en octets, des données de configuration récupérées. Si la taille de mémoire tampon spécifiée par cbEnumValues est trop petite, la fonction retourne ERROR_MORE_DATA et pcbEnumValues indique la taille de mémoire tampon requise.
-
pnEnumValues [out]
-
Pointeur vers une variable qui reçoit le nombre de structures PRINTER_ENUM_VALUESretournées dans pEnumValues.
Valeur retournée
Si la fonction réussit, la valeur de retour est ERROR_SUCCESS.
Si la fonction échoue, la valeur de retour est un code d’erreur système.
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.
EnumPrinterDataEx récupère les données de configuration d’imprimante définies par les fonctions SetPrinterDataEx et SetPrinterData .
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 |
EnumPrinterDataExW (Unicode) et EnumPrinterDataExA (ANSI) |