EnumJobs-Funktion

Die EnumJobs-Funktion ruft Informationen zu einem angegebenen Satz von Druckaufträgen für einen angegebenen Drucker ab.

Syntax

BOOL EnumJobs(
  _In_  HANDLE  hPrinter,
  _In_  DWORD   FirstJob,
  _In_  DWORD   NoJobs,
  _In_  DWORD   Level,
  _Out_ LPBYTE  pJob,
  _In_  DWORD   cbBuf,
  _Out_ LPDWORD pcbNeeded,
  _Out_ LPDWORD pcReturned
);

Parameter

hPrinter [ In]

Ein Handle für das Druckerobjekt, dessen Druckaufträge die Funktion aufzählt. Verwenden Sie die OpenPrinter- oder AddPrinter-Funktion, um einen Druckerhandpunkt abzurufen.

FirstJob [ In]

Die nullbasierte Position innerhalb der Druckwarteschlange des ersten aufzählten Druckauftrags. Beispielsweise gibt der Wert 0 an, dass die Enumeration beim ersten Druckauftrag in der Druckwarteschlange beginnen soll. Der Wert 9 gibt an, dass die Enumeration beim zehnten Druckauftrag in der Druckwarteschlange beginnen soll.

NoJobs [ In]

Die Gesamtanzahl der aufzählten Druckaufträge.

Ebene [ In]

Der Typ der im pJob-Puffer zurückgegebenen Informationen.

Wert Bedeutung
1
pJob empfängt ein Array von JOB _ INFO _ 1-Strukturen
2
pJob empfängt ein Array von JOB _ INFO _ 2-Strukturen
3
pJob empfängt ein Array von JOB _ INFO _ 3-Strukturen

pJob [ out]

Ein Zeiger auf einen Puffer, der ein Array von JOB _ INFO _ 1-, JOB INFO _ _ 2-oder JOB INFO _ _ 3-Strukturen empfängt. Der Puffer muss groß genug sein, um das Array von Strukturen und alle Zeichenfolgen oder andere Daten zu empfangen, auf die die Strukturmitglieder zeigen.

Um die erforderliche Puffergröße zu bestimmen, rufen Sie EnumJobs mit cbBuf auf 0 (null) auf. Bei EnumJobs tritt ein Fehler auf, getLastError gibt ERROR INSUFFICIENT BUFFER zurück, und der _ Parameter _ "enumJobs" gibt die Größe des Puffers in Bytes zurück, der zum Speichern des Arrays von Strukturen und deren Daten erforderlich ist.

cbBuf [ In]

Die Größe des pJob-Puffers in Bytes.

-Needed [ out]

Ein Zeiger auf eine Variable, die die Anzahl der kopierten Bytes empfängt, wenn die Funktion erfolgreich ist. Wenn die Funktion fehlschlägt, empfängt die Variable die erforderliche Anzahl von Bytes.

pcReturned [ out]

Ein Zeiger auf eine Variable, die die Anzahl der im pJob-Puffer zurückgegebenen JOB INFO _ _ 1-, JOB INFO _ _ 2-oder JOB INFO _ _ 3-Strukturen empfängt.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert ein Wert ungleich 0 (null).

Wenn die Funktion fehlerhaft ist, ist der Rückgabewert null.

Bemerkungen

Hinweis

Dies ist eine blockierende oder synchrone Funktion, die möglicherweise nicht sofort zurückkehrt. Wie schnell diese Funktion zurückgegeben wird, hängt von Laufzeitfaktoren wie Netzwerkstatus, Druckerserverkonfiguration und Implementierungsfaktoren des Druckertreibers ab, die beim Schreiben einer Anwendung schwer vorherzusagen sind. Das Aufrufen dieser Funktion aus einem Thread, der die Interaktion mit der Benutzeroberfläche verwaltet, könnte dazu kommen, dass die Anwendung nicht reagiert.

Die JOB _ INFO _ 1-Struktur enthält allgemeine Druckauftragsinformationen. Die STRUKTUR JOB INFO _ _ 2 enthält viel ausführlichere Informationen. Die JOB _ INFO _ 3-Struktur enthält Informationen dazu, wie Aufträge verknüpft werden.

Um die Anzahl der Druckaufträge in der Druckerwarteschlange zu bestimmen, rufen Sie die GetPrinter-Funktion auf, und legen Sie dabei den Level-Parameter auf 2 fest.

Requirements (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 (include Windows.h)
Bibliothek
Winspool.lib
DLL
Winspool.drv
Unicode- und ANSI-Name
EnumJobsW (Unicode) und EnumJobsA (ANSI)

Weitere Informationen

Drucken

Druckspooler-API-Funktionen

GetJob

GetPrinter

AUFTRAGSINFORMATIONEN _ _ 1

AUFTRAGSINFORMATIONEN _ _ 2

AUFTRAGSINFORMATIONEN _ _ 3

OpenPrinter

SetJob