structure PRINTER_INFO_4

La structure PRINTER_INFO_4 spécifie des informations générales sur l’imprimante.

La structure peut être utilisée pour récupérer des informations minimales sur l’imprimante sur un appel à EnumPrinters. Un tel appel est un moyen rapide et simple de récupérer les noms et les attributs de toutes les imprimantes installées localement sur un système et de toutes les connexions d’imprimante à distance qu’un utilisateur a établies.

Syntaxe

typedef struct _PRINTER_INFO_4 {
  LPTSTR pPrinterName;
  LPTSTR pServerName;
  DWORD  Attributes;
} PRINTER_INFO_4, *PPRINTER_INFO_4;

Membres

pPrinterName

Pointeur vers une chaîne terminée par null qui spécifie le nom de l’imprimante (locale ou distante).

pServerName

Pointeur vers une chaîne terminée par null qui est le nom du serveur.

Attributs

Spécifie des informations sur les données retournées.

Valeur Signification
PRINTER_ATTRIBUTE_LOCAL L’imprimante est une imprimante locale.
PRINTER_ATTRIBUTE_NETWORK L’imprimante est une imprimante distante.

Notes

La structure PRINTER_INFO_4 offre un moyen simple et extrêmement rapide de récupérer les noms des imprimantes installées sur un ordinateur local, ainsi que les connexions à distance qu’un utilisateur a établies. Quand EnumPrinters est appelé avec une structure de données PRINTER_INFO_4 , cette fonction interroge le Registre pour obtenir les informations spécifiées, puis retourne immédiatement. Cela diffère du comportement d’EnumPrinters lorsqu’il est appelé avec d’autres niveaux de structures de données PRINTER_INFO_xxx . En particulier, quand EnumPrinters est appelé avec une structure de données de niveau 2 (PRINTER_INFO_2 ), il effectue un appel OpenPrinter sur chaque connexion distante. Si une connexion à distance est arrêtée, si le serveur distant n’existe plus ou si l’imprimante distante n’existe plus, la fonction doit attendre que le RPC expire et, par conséquent, échouer l’appel OpenPrinter . Cette opération peut prendre du temps. Le passage d’une structure de PRINTER_INFO_4 permet à une application de récupérer un minimum d’informations requises ; si vous souhaitez obtenir des informations plus détaillées, un appel enumPrinter de niveau 2 ultérieur peut être effectué.

Les attributs peuvent également contenir des valeurs définies dans le champ Attributs de PRINTER_INFO_2.

Certaines configurations d’imprimante, telles que les connexions d’imprimante à certains serveurs d’impression non basés sur Windows, peuvent retourner à la fois PRINTER_ATTRIBUTE_LOCAL et PRINTER_ATTRIBUTE_NETWORK.

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
Winspool.h (inclure Windows.h)
Noms Unicode et ANSI
_PRINTER_INFO_4W (Unicode) et _PRINTER_INFO_4A (ANSI)

Voir aussi

Impression

Structures de l’API spouleur d’impression

GetPrinter

EnumPrinters

OpenPrinter

PRINTER_INFO_1

PRINTER_INFO_2

PRINTER_INFO_3