Freigeben über


EnumPrintProcessorDatatypesA-Funktion (winspool.h)

Die EnumPrintProcessorDatatypes eines Druckprozessors Funktion listet die datentypen auf, die der Druckprozessor unterstützt.

Syntax

BOOL EnumPrintProcessorDatatypesA(
  [in, optional]  LPSTR   pName,
  [in]            LPSTR   pPrintProcessorName,
                  DWORD   Level,
  [out, optional] LPBYTE  pDatatypes,
                  DWORD   cbBuf,
  [out]           LPDWORD pcbNeeded,
  [out]           LPDWORD pcReturned
);

Parameter

[in, optional] pName

Vom Aufrufer bereitgestellter Zeiger auf eine Zeichenfolge, die den Namen des Servers darstellt, auf dem der Druckprozessor installiert ist. Wenn NULL-, ist der Server das lokale System.

[in] pPrintProcessorName

Vom Aufrufer bereitgestellter Zeiger auf eine Zeichenfolge, die den Namen des Druckprozessors darstellt.

Level

Vom Aufrufer bereitgestellter Wert, der den Typ der im Puffer zurückzugebenden Strukturen angibt, auf die durch pDatatypesverwiesen wird. Dieser Wert muss 1 sein, der angibt, dass die Struktur DATATYPES_INFO_1 ist.

[out, optional] pDatatypes

Vom Aufrufer bereitgestellter Zeiger auf einen Puffer, um ein Array von DATATYPES_INFO_1 Strukturen zu empfangen, gefolgt von einer Reihe von Zeichenfolgen, die Datentypnamen darstellen. Die DATATYPES_INFO_1 Struktur wird in der Microsoft Windows SDK-Dokumentation beschrieben. Das Strukturelement pName- muss vom Typ LPWSTR sein.

cbBuf

Vom Aufrufer bereitgestellter Wert, der die Größe des Puffers in Bytes darstellt, auf den pDatatypesverweist.

[out] pcbNeeded

Vom Aufrufer bereitgestellter Zeiger an eine Position, um die erforderliche Mindestgröße für den Puffer zu erhalten, auf den pDatatypesverweist.

[out] pcReturned

Vom Aufrufer bereitgestellter Zeiger an eine Position, um die Anzahl der im Puffer zurückgegebenen DATATYPES_INFO_1 Strukturen zu empfangen, auf die von pDatatypesverwiesen wird.

Rückgabewert

Wenn der Vorgang erfolgreich ist, sollte die Funktion TRUE-zurückgeben. Wenn der Vorgang fehlschlägt, sollte die Funktion SetLastError- aufrufen, um einen Fehlercode festzulegen, und dann FALSE-zurückgeben.

Bemerkungen

Druckprozessoren sind erforderlich, um eine EnumPrintProcessorDatatypes Funktion zu exportieren. Der lokale Druckanbieter ruft die Funktion während der Initialisierung auf. Die Funktion wird auch aufgerufen, wenn eine Anwendung die Version des Spoolers derselben Funktion aufruft.

Die Funktion muss ein Array von DATATYPES_INFO_1 Strukturen zurückgeben, wobei jede Struktur auf eine Zeichenfolge zeigt, die einen Datentyp darstellt. Die tatsächlichen Zeichenfolgen müssen auch nach dem Strukturarray im Puffer enthalten sein. Ein Beispiel finden Sie unter Beispieldruckprozessor.

Die Funktion sollte die Anzahl der zurückgegebenen DATATYPES_INFO_1 Strukturen (d. h. die Anzahl der unterstützten Datentypen) an der Position zurückgeben, auf die durch pcReturnedverwiesen wird.

Die Funktion sollte die minimale erforderliche Puffergröße an der Stelle zurückgeben, auf die durch pcbNeedededverwiesen wird. Wenn der angegebene Puffer zu klein ist, sollte die Funktion einen Wert für pcbNeededangeben, den Fehlercode auf ERROR_INSUFFICIENT_BUFFER festlegen und FALSE-zurückgeben.

Anforderungen

Anforderung Wert
Zielplattform- Desktop
Header- winspool.h (include Winspool.h)