PRINTER_INFO_2 Struktur

Die PRINTER_INFO_2-Struktur gibt detaillierte Druckerinformationen an.

Syntax

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;

Member

pServerName

Ein Zeiger auf eine NULL-endende Zeichenfolge, die den Server identifiziert, der den Drucker steuert. Wenn diese Zeichenfolge NULL ist, wird der Drucker lokal gesteuert.

pPrinterName

Ein Zeiger auf eine NULL-endende Zeichenfolge, die den Namen des Druckers angibt.

pShareName

Ein Zeiger auf eine NULL-endende Zeichenfolge, die den Freigabepunkt für den Drucker identifiziert. (Diese Zeichenfolge wird nur verwendet, wenn die PRINTER_ATTRIBUTE_SHARED Konstante für den Attributes-Member festgelegt wurde.)

pPortName

Ein Zeiger auf eine NULL-endende Zeichenfolge, die die Ports identifiziert, die zum Übertragen von Daten an den Drucker verwendet werden. Wenn ein Drucker mit mehr als einem Port verbunden ist, müssen die Namen der einzelnen Ports durch Kommas getrennt werden (z. B. "LPT1:,LPT2:,LPT3:").

pDriverName

Ein Zeiger auf eine NULL-endende Zeichenfolge, die den Namen des Druckertreibers angibt.

pKommentierung

Ein Zeiger auf eine NULL-endende Zeichenfolge, die eine kurze Beschreibung des Druckers bereitstellt.

pLocation

Ein Zeiger auf eine NULL-endende Zeichenfolge, die den physischen Standort des Druckers angibt (z. B. "Bldg. 38, Room 1164").

pDevMode

Ein Zeiger auf eine DEVMODE-Struktur , die Standarddruckerdaten wie die Papierausrichtung und die Auflösung definiert.

pSepFile

Ein Zeiger auf eine NULL-endende Zeichenfolge, die den Namen der Datei angibt, die zum Erstellen der Trennseite verwendet wird. Diese Seite wird verwendet, um Druckaufträge zu trennen, die an den Drucker gesendet werden.

pPrintProcessor

Ein Zeiger auf eine NULL-endende Zeichenfolge, die den Namen des vom Drucker verwendeten Druckprozessors angibt. Sie können die EnumPrintProcessors-Funktion verwenden, um eine Liste der auf einem Server installierten Druckprozessoren abzurufen.

pDatatype

Ein Zeiger auf eine NULL-endende Zeichenfolge, die den Datentyp angibt, der zum Aufzeichnen des Druckauftrags verwendet wird. Sie können die EnumPrintProcessorDatatypes-Funktion verwenden, um eine Liste der Datentypen abzurufen, die von einem bestimmten Druckprozessor unterstützt werden.

pParameters

Ein Zeiger auf eine NULL-endende Zeichenfolge, die die Standardparameter des Druckprozessors angibt.

pSecurityDescriptor

Ein Zeiger auf eine SECURITY_DESCRIPTOR Struktur für den Drucker. Dieser Member kann NULL sein.

Attribute

Die Druckerattribute. Dieser Member kann eine beliebige sinnvolle Kombination der folgenden Werte sein.

Wert Bedeutung
PRINTER_ATTRIBUTE_DIRECT Der Auftrag wird direkt an den Drucker gesendet (er ist nicht gepoolt).
PRINTER_ATTRIBUTE_DO_COMPLETE_FIRST Wenn set und printer für das Drucken während des Spoolings festgelegt sind, werden alle Aufträge, die das Spooling abgeschlossen haben, vor Aufträgen gedruckt, die das Spooling noch nicht abgeschlossen haben.
PRINTER_ATTRIBUTE_ENABLE_DEVQ Wenn festgelegt, wird DevQueryPrint aufgerufen. DevQueryPrint schlägt möglicherweise fehl, wenn die Dokument- und Druckereinrichtung nicht übereinstimmen. Das Festlegen dieses Flags führt dazu, dass nicht übereinstimmende Dokumente in der Warteschlange gespeichert werden.
PRINTER_ATTRIBUTE_HIDDEN Reserviert.
PRINTER_ATTRIBUTE_KEEPPRINTEDJOBS Wenn festgelegt, werden Aufträge beibehalten, nachdem sie gedruckt wurden. Wenn dies nicht festgelegt ist, werden Aufträge gelöscht.
PRINTER_ATTRIBUTE_LOCAL Der Drucker ist ein lokaler Drucker.
PRINTER_ATTRIBUTE_NETWORK Drucker ist eine Netzwerkdruckerverbindung.
PRINTER_ATTRIBUTE_PUBLISHED Gibt an, ob der Drucker im Verzeichnisdienst veröffentlicht wird.
PRINTER_ATTRIBUTE_QUEUED Wenn diese Einstellung festgelegt ist, wird der Drucker nach dem Spoolen der letzten Seite mit dem Drucken gestartet. Wenn nicht festgelegt und PRINTER_ATTRIBUTE_DIRECT nicht festgelegt ist, wird der Drucker während des Spoolings gepoolt und gedruckt.
PRINTER_ATTRIBUTE_RAW_ONLY Gibt an, dass nur Druckaufträge vom Rohdatentyp Spools verwendet werden können.
PRINTER_ATTRIBUTE_SHARED Drucker wird freigegeben.

In Windows XP und höheren Versionen von Windows kann auch der folgende Wert verwendet werden.

Wert Bedeutung
PRINTER_ATTRIBUTE_FAX Wenn festgelegt, ist der Drucker ein Faxdrucker. Dies kann nur von AddPrinter festgelegt werden, aber sie kann von EnumPrinters und GetPrinter abgerufen werden.

In Windows Vista und höheren Versionen von Windows können auch die folgenden Werte verwendet werden.

Wert Bedeutung
PRINTER_ATTRIBUTE_FRIENDLY_NAME Ein Computer hat eine Verbindung mit diesem Drucker hergestellt und ihm einen Anzeigenamen gegeben.
PRINTER_ATTRIBUTE_MACHINE Drucker ist eine Computerverbindung.
PRINTER_ATTRIBUTE_PUSHED_USER Der Drucker wurde mithilfe der Benutzerrichtlinie Pushdruckerverbindungen installiert.
PRINTER_ATTRIBUTE_PUSHED_MACHINE Der Drucker wurde mithilfe der Computerrichtlinie Pushdruckerverbindungen installiert.

In Windows Server 2003 kann auch der folgende Wert verwendet werden.

Wert Bedeutung
PRINTER_ATTRIBUTE_TS Gibt an, dass der Drucker derzeit über einen Terminalserver verbunden ist.

Priority

Ein Prioritätswert, den der Spooler zum Weiterleiten von Druckaufträgen verwendet.

DefaultPriority

Der Standardwert, der jedem Druckauftrag zugewiesen ist.

StartTime

Der früheste Zeitpunkt, zu dem der Drucker einen Auftrag druckt. Dieser Wert wird als Minuten ausgedrückt, die seit 12:00 Uhr GMT verstrichen sind (Greenwich Mean Time).

UntilTime

Der letzte Zeitpunkt, zu dem der Drucker einen Auftrag druckt. Dieser Wert wird als Minuten ausgedrückt, die seit 12:00 Uhr GMT verstrichen sind (Greenwich Mean Time).

Status

Der Drucker status. Dieser Member kann eine beliebige sinnvolle Kombination der folgenden Werte sein.

Wert Bedeutung
PRINTER_STATUS_BUSY Der Drucker ist ausgelastet.
PRINTER_STATUS_DOOR_OPEN Die Druckertür ist geöffnet.
PRINTER_STATUS_ERROR Der Drucker weist einen Fehlerzustand auf.
PRINTER_STATUS_INITIALIZING Der Drucker wird zurzeit initialisiert.
PRINTER_STATUS_IO_ACTIVE Der Drucker befindet sich in einem aktiven Eingabe-/Ausgabezustand.
PRINTER_STATUS_MANUAL_FEED Der Drucker befindet sich in einem manuellen Feedzustand.
PRINTER_STATUS_NO_TONER Im Drucker ist kein Toner vorhanden.
PRINTER_STATUS_NOT_AVAILABLE Der Drucker ist nicht für den Druck verfügbar.
PRINTER_STATUS_OFFLINE Der Drucker ist offline.
PRINTER_STATUS_OUT_OF_MEMORY Auf dem Drucker ist der Arbeitsspeicher nicht mehr vorhanden.
PRINTER_STATUS_OUTPUT_BIN_FULL Das Ausgabefach des Druckers ist voll.
PRINTER_STATUS_PAGE_PUNT Der Drucker kann die aktuelle Seite nicht drucken.
PRINTER_STATUS_PAPER_JAM Papier ist im Drucker eingeklemmt
PRINTER_STATUS_PAPER_OUT Der Drucker ist aus Papier.
PRINTER_STATUS_PAPER_PROBLEM Der Drucker hat ein Papierproblem.
PRINTER_STATUS_PAUSED Der Drucker ist angehalten.
PRINTER_STATUS_PENDING_DELETION Der Drucker wird gelöscht.
PRINTER_STATUS_POWER_SAVE Der Drucker befindet sich im Energiesparmodus.
PRINTER_STATUS_PRINTING Der Drucker druckt.
PRINTER_STATUS_PROCESSING Der Drucker verarbeitet einen Druckauftrag.
PRINTER_STATUS_SERVER_UNKNOWN Der Drucker status ist unbekannt.
PRINTER_STATUS_TONER_LOW Der Drucker ist auf dem Toner niedrig.
PRINTER_STATUS_USER_INTERVENTION Der Drucker weist einen Fehler auf, der erfordert, dass der Benutzer etwas tun muss.
PRINTER_STATUS_WAITING Der Drucker wartet.
PRINTER_STATUS_WARMING_UP Der Drucker befindet sich in der Aufwärmphase.

cJobs

Die Anzahl der Druckaufträge, die für den Drucker in die Warteschlange gestellt wurden.

AveragePPM

Die durchschnittliche Anzahl von Seiten pro Minute, die auf dem Drucker gedruckt wurden.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client)
Windows 2000 Professional [nur Desktop-Apps]
Unterstützte Mindestversion (Server)
Windows 2000 Server [nur Desktop-Apps]
Header
Winspool.h (Einschließen von Windows.h)
Unicode- und ANSI-Name
_PRINTER_INFO_2W (Unicode) und _PRINTER_INFO_2A (ANSI)

Siehe auch

Drucken

Drucken von Spooler-API-Strukturen

DEVMODE

EnumPrinters

PRINTER_INFO_1

PRINTER_INFO_3

PRINTER_INFO_4

SECURITY_DESCRIPTOR