Freigeben über


PRINTER_INFO_4 Struktur

Die PRINTER_INFO_4-Struktur gibt allgemeine Druckerinformationen an.

Die Struktur kann verwendet werden, um minimale Druckerinformationen bei einem Aufruf von EnumPrinters abzurufen. Ein solcher Aufruf ist eine schnelle und einfache Möglichkeit, die Namen und Attribute aller lokal installierten Drucker auf einem System und alle Remotedruckerverbindungen abzurufen, die ein Benutzer eingerichtet hat.

Syntax

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

Member

pPrinterName

Zeiger auf eine NULL-Zeichenfolge, die den Namen des Druckers (lokal oder remote) angibt.

pServerName

Zeiger auf eine NULL-beendete Zeichenfolge, die dem Namen des Servers entspricht.

Attribute

Gibt Informationen zu den zurückgegebenen Daten an.

Wert Bedeutung
PRINTER_ATTRIBUTE_LOCAL Der Drucker ist ein lokaler Drucker.
PRINTER_ATTRIBUTE_NETWORK Der Drucker ist ein Remotedrucker.

Bemerkungen

Die PRINTER_INFO_4-Struktur bietet eine einfache und extrem schnelle Möglichkeit zum Abrufen der Namen der Drucker, die auf einem lokalen Computer installiert sind, sowie die Remoteverbindungen, die ein Benutzer eingerichtet hat. Wenn EnumPrinters mit einer PRINTER_INFO_4 Datenstruktur aufgerufen wird, fragt diese Funktion die Registrierung nach den angegebenen Informationen ab und gibt sofort zurück. Dies unterscheidet sich vom Verhalten von EnumPrinters , wenn sie mit anderen Ebenen von PRINTER_INFO_xxx Datenstrukturen aufgerufen werden. Insbesondere wenn EnumPrinters mit einer Datenstruktur der Ebene 2 (PRINTER_INFO_2 ) aufgerufen wird, führt es einen OpenPrinter-Aufruf für jede Remoteverbindung aus. Wenn eine Remoteverbindung nicht mehr vorhanden ist, der Remoteserver nicht mehr vorhanden ist oder der Remotedrucker nicht mehr vorhanden ist, muss die Funktion warten, bis das RPC-Timeout auftritt und folglich beim OpenPrinter-Aufruf fehlschlägt. Dies kann eine Weile dauern. Durch das Übergeben einer PRINTER_INFO_4-Struktur kann eine Anwendung ein Minimum an erforderlichen Informationen abrufen. wenn ausführlichere Informationen gewünscht werden, kann ein nachfolgender EnumPrinter Level 2-Aufruf erfolgen.

Attribute können auch Werte enthalten, die im Feld Attribute von PRINTER_INFO_2 definiert sind.

Einige Druckerkonfigurationen, z. B. Druckerverbindungen mit einigen nicht windowsbasierten Druckservern, geben möglicherweise sowohl PRINTER_ATTRIBUTE_LOCAL als auch PRINTER_ATTRIBUTE_NETWORK zurück.

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ßlich Windows.h)
Unicode- und ANSI-Name
_PRINTER_INFO_4W (Unicode) und _PRINTER_INFO_4A (ANSI)

Siehe auch

Drucken

Drucken von Spooler-API-Strukturen

GetPrinter

EnumPrinters

OpenPrinter

PRINTER_INFO_1

PRINTER_INFO_2

PRINTER_INFO_3