Share via


EngEnumForms-Funktion (winddi.h)

Die EngEnumForms-Funktion listet die Formulare auf, die vom angegebenen Drucker unterstützt werden.

Syntax

ENGAPI BOOL EngEnumForms(
  [in]            HANDLE  hPrinter,
  [in]            DWORD   Level,
  [out, optional] LPBYTE  pForm,
  [in]            DWORD   cbBuf,
  [out]           LPDWORD pcbNeeded,
  [out]           LPDWORD pcReturned
);

Parameter

[in] hPrinter

Handle mit dem Drucker, für den die Formulare aufgelistet werden sollen. Dies ist das PDEV-Handle, das als hDriver-Parameter von DrvEnablePDEV übergeben wird.

[in] Level

Gibt die Version der Struktur an, auf die von pForm verwiesen wird. Dieser Wert muss 1 sein, was angibt, dass die aufgezählten Formulare in FORM_1_INFO Strukturen zurückgegeben werden sollen.

[out, optional] pForm

Zeiger auf ein Array von Bytes, in das die aufgezählten FORM_INFO_1-Strukturen geschrieben werden.

[in] cbBuf

Gibt die Größe von lpbForms in Bytes an.

[out] pcbNeeded

Zeiger auf ein DWORD, das die Anzahl der in pForm kopierten Bytes empfängt, wenn die Kopie erfolgreich abgeschlossen wurde. Wenn pForm zu klein ist, um alle Daten der aufgezählten Formulare zu enthalten, gibt dieses DWORD die Anzahl der erforderlichen Bytes an.

[out] pcReturned

Zeiger auf ein DWORD, das die Anzahl der FORM_INFO_1 Strukturen empfängt, die in pForm kopiert wurden.

Rückgabewert

EngEnumForms gibt TRUE zurück, wenn alle Parameter gültig sind und die aufgezählten Formulardaten erfolgreich in pForm kopiert wurden. Andernfalls wird FALSE zurückgegeben, und eine Fehlermeldung wird protokolliert. Rufen Sie EngGetLastError auf, um Fehlerinformationen abzurufen.

Hinweise

Ein Druckertreiber kann EngEnumForms aufrufen, damit GDI die Liste der von einem bestimmten Drucker unterstützten Formulare erhält. Die aufgezählten Informationen werden als Array von FORM_INFO_1 Strukturen (deklariert in der Microsoft Windows SDK-Dokumentation) zurückgegeben, auf die von pForm verwiesen wird. Wenn das Array, auf das von pForm verwiesen wird, nicht groß genug ist, um die aufgezählten Daten aufzunehmen, wird stattdessen die erforderliche Arraygröße in pcbNeeded zurückgegeben.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Windows 2000 und höheren Versionen der Windows-Betriebssysteme.
Zielplattform Universell
Header winddi.h (einschließlich Winddi.h)
Bibliothek Win32k.lib
DLL Win32k.sys

Weitere Informationen

DrvEnablePDEV

EngGetLastError