PRINTER_INFO_2 structure

La structure PRINTER_INFO_2 spécifie des informations détaillées sur l’imprimante.

Syntaxe

typedef struct _PRINTER_INFO_2 {
  LPTSTR               pServerName;
  LPTSTR               pPrinterName;
  LPTSTR               pShareName;
  LPTSTR               pPortName;
  LPTSTR               pDriverName;
  LPTSTR               pComment;
  LPTSTR               pLocation;
  LPDEVMODE            pDevMode;
  LPTSTR               pSepFile;
  LPTSTR               pPrintProcessor;
  LPTSTR               pDatatype;
  LPTSTR               pParameters;
  PSECURITY_DESCRIPTOR pSecurityDescriptor;
  DWORD                Attributes;
  DWORD                Priority;
  DWORD                DefaultPriority;
  DWORD                StartTime;
  DWORD                UntilTime;
  DWORD                Status;
  DWORD                cJobs;
  DWORD                AveragePPM;
} PRINTER_INFO_2, *PPRINTER_INFO_2;

Membres

pServerName

Pointeur vers une chaîne terminée par null identifiant le serveur qui contrôle l’imprimante. Si cette chaîne a la valeur NULL, l’imprimante est contrôlée localement.

pPrinterName

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

pShareName

Pointeur vers une chaîne terminée par null qui identifie le point de partage pour l’imprimante. (Cette chaîne est utilisée uniquement si la constante PRINTER_ATTRIBUTE_SHARED a été définie pour le membre Attributes .)

pPortName

Pointeur vers une chaîne terminée par null qui identifie le ou les ports utilisés pour transmettre des données à l’imprimante. Si une imprimante est connectée à plusieurs ports, les noms de chaque port doivent être séparés par des virgules (par exemple, « LPT1:,LPT2:,LPT3: »).

pDriverName

Pointeur vers une chaîne terminée par null qui spécifie le nom du pilote d’imprimante.

pComment

Pointeur vers une chaîne terminée par null qui fournit une brève description de l’imprimante.

pLocation

Pointeur vers une chaîne terminée par null qui spécifie l’emplacement physique de l’imprimante (par exemple, « Bldg. 38, Salle 1164 »).

pDevMode

Pointeur vers une structure DEVMODE qui définit les données d’imprimante par défaut, telles que l’orientation du papier et la résolution.

pSepFile

Pointeur vers une chaîne terminée par null qui spécifie le nom du fichier utilisé pour créer la page de séparation. Cette page est utilisée pour séparer les travaux d’impression envoyés à l’imprimante.

pPrintProcessor

Pointeur vers une chaîne terminée par null qui spécifie le nom du processeur d’impression utilisé par l’imprimante. Vous pouvez utiliser la fonction EnumPrintProcessors pour obtenir une liste des processeurs d’impression installés sur un serveur.

pDatatype

Pointeur vers une chaîne terminée par null qui spécifie le type de données utilisé pour enregistrer le travail d’impression. Vous pouvez utiliser la fonction EnumPrintProcessorDatatypes pour obtenir une liste des types de données pris en charge par un processeur d’impression spécifique.

pParameters

Pointeur vers une chaîne terminée par null qui spécifie les paramètres par défaut du processeur d’impression.

pSecurityDescriptor

Pointeur vers une structure SECURITY_DESCRIPTOR pour l’imprimante. Ce membre peut être NULL.

Attributs

Attributs de l’imprimante. Ce membre peut être n’importe quelle combinaison raisonnable des valeurs suivantes.

Valeur Signification
PRINTER_ATTRIBUTE_DIRECT Le travail est envoyé directement à l’imprimante (il n’est pas mis en file d’attente).
PRINTER_ATTRIBUTE_DO_COMPLETE_FIRST Si set et printer est défini pour l’impression en cours de mise en attente, tous les travaux qui ont terminé le spoulage sont planifiés pour imprimer avant les travaux qui n’ont pas terminé le spoulage.
PRINTER_ATTRIBUTE_ENABLE_DEVQ Si la valeur est définie, DevQueryPrint est appelée. DevQueryPrint peut échouer si les configurations du document et de l’imprimante ne correspondent pas. La définition de cet indicateur entraîne la tenue de documents incompatibles dans la file d’attente.
PRINTER_ATTRIBUTE_HIDDEN Réservé.
PRINTER_ATTRIBUTE_KEEPPRINTEDJOBS Si la valeur est définie, les travaux sont conservés après leur impression. S’il n’est pas défini, les travaux sont supprimés.
PRINTER_ATTRIBUTE_LOCAL L’imprimante est une imprimante locale.
PRINTER_ATTRIBUTE_NETWORK L’imprimante est une connexion d’imprimante réseau.
PRINTER_ATTRIBUTE_PUBLISHED Indique si l’imprimante est publiée dans le service d’annuaire.
PRINTER_ATTRIBUTE_QUEUED Si cette option est définie, l’imprimante se met en file d’attente et démarre l’impression une fois que la dernière page est mise en attente. S’il n’est pas défini et que PRINTER_ATTRIBUTE_DIRECT n’est pas défini, l’imprimante s’exécute en file d’attente et imprime pendant la mise en file d’attente.
PRINTER_ATTRIBUTE_RAW_ONLY Indique que seuls les travaux d’impression de type de données brutes peuvent être mis en pool.
PRINTER_ATTRIBUTE_SHARED L’imprimante est partagée.

Dans Windows XP et les versions ultérieures de Windows, la valeur suivante peut également être utilisée.

Valeur Signification
PRINTER_ATTRIBUTE_FAX Si la valeur est définie, l’imprimante est une imprimante de télécopie. Cela ne peut être défini que par AddPrinter, mais il peut être récupéré par EnumPrinters et GetPrinter.

Dans Windows Vista et les versions ultérieures de Windows, les valeurs suivantes peuvent également être utilisées.

Valeur Signification
PRINTER_ATTRIBUTE_FRIENDLY_NAME Un ordinateur s’est connecté à cette imprimante et lui a donné un nom convivial.
PRINTER_ATTRIBUTE_MACHINE L’imprimante est une connexion par ordinateur.
PRINTER_ATTRIBUTE_PUSHED_USER L’imprimante a été installée à l’aide de la stratégie utilisateur Push Printer Connections.
PRINTER_ATTRIBUTE_PUSHED_MACHINE L’imprimante a été installée à l’aide de la stratégie d’ordinateur Push Printer Connections.

Dans Windows Server 2003, la valeur suivante peut également être utilisée.

Valeur Signification
PRINTER_ATTRIBUTE_TS Indique que l’imprimante est actuellement connectée via un serveur Terminal Server.

Priorité

Valeur de priorité que le spouleur utilise pour acheminer les travaux d’impression.

DefaultPriority

Valeur de priorité par défaut affectée à chaque travail d’impression.

StartTime

Heure la plus ancienne à laquelle l’imprimante imprimera un travail. Cette valeur est exprimée en minutes écoulées depuis 12h00 GMT (heure moyenne de Greenwich).

UntilTime

Heure la plus récente à laquelle l’imprimante imprimera un travail. Cette valeur est exprimée en minutes écoulées depuis 12h00 GMT (heure moyenne de Greenwich).

État

L’imprimante status. Ce membre peut être n’importe quelle combinaison raisonnable des valeurs suivantes.

Valeur Signification
PRINTER_STATUS_BUSY L'imprimante est occupée.
PRINTER_STATUS_DOOR_OPEN La porte de l’imprimante est ouverte.
PRINTER_STATUS_ERROR L'imprimante est dans un état d'erreur.
PRINTER_STATUS_INITIALIZING L'imprimante s'initialise.
PRINTER_STATUS_IO_ACTIVE L’imprimante est dans un état d’entrée/sortie actif
PRINTER_STATUS_MANUAL_FEED L’imprimante est dans un état de flux manuel.
PRINTER_STATUS_NO_TONER L'imprimante est sans toner.
PRINTER_STATUS_NOT_AVAILABLE L’imprimante n’est pas disponible pour l’impression.
PRINTER_STATUS_OFFLINE L'imprimante est hors connexion.
PRINTER_STATUS_OUT_OF_MEMORY La mémoire de l’imprimante est insuffisante.
PRINTER_STATUS_OUTPUT_BIN_FULL Le bac de sortie de l'imprimante est plein.
PRINTER_STATUS_PAGE_PUNT L’imprimante ne peut pas imprimer la page active.
PRINTER_STATUS_PAPER_JAM Le papier est bloqué dans l’imprimante
PRINTER_STATUS_PAPER_OUT L’imprimante est en papier.
PRINTER_STATUS_PAPER_PROBLEM L’imprimante a un problème de papier.
PRINTER_STATUS_PAUSED L’imprimante est suspendue.
PRINTER_STATUS_PENDING_DELETION L’imprimante est en cours de suppression.
PRINTER_STATUS_POWER_SAVE L'imprimante est en mode mise en veille.
PRINTER_STATUS_PRINTING L’imprimante est en cours d’impression.
PRINTER_STATUS_PROCESSING L’imprimante traite un travail d’impression.
PRINTER_STATUS_SERVER_UNKNOWN L’imprimante status est inconnue.
PRINTER_STATUS_TONER_LOW L’imprimante est faible en toner.
PRINTER_STATUS_USER_INTERVENTION L’imprimante a une erreur qui oblige l’utilisateur à faire quelque chose.
PRINTER_STATUS_WAITING L’imprimante est en attente.
PRINTER_STATUS_WARMING_UP L'imprimante s'allume.

cJobs

Nombre de travaux d’impression qui ont été mis en file d’attente pour l’imprimante.

AveragePPM

Nombre moyen de pages imprimées sur l’imprimante par minute.

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_2W (Unicode) et _PRINTER_INFO_2A (ANSI)

Voir aussi

Impression

Imprimer les structures de l’API spouleur

DEVMODE

EnumPrinters

PRINTER_INFO_1

PRINTER_INFO_3

PRINTER_INFO_4

SECURITY_DESCRIPTOR