Compartir a través de


Función EngEnumForms (winddi.h)

La función EngEnumForms enumera los formularios admitidos por la impresora especificada.

Sintaxis

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

Parámetros

[in] hPrinter

Identificador de la impresora para la que se deben enumerar los formularios. Este es el identificador PDEV que se pasa como el parámetro hDriver de DrvEnablePDEV.

[in] Level

Especifica la versión de la estructura a la que apunta pForm. Este valor debe ser 1, lo que indica que se devolverán los formularios enumerados en FORM_1_INFO estructuras.

[out, optional] pForm

Puntero a una matriz de bytes en la que se escriben las estructuras de FORM_INFO_1 enumeradas.

[in] cbBuf

Especifica el tamaño, en bytes, de lpbForms.

[out] pcbNeeded

Puntero a un DWORD que recibe el número de bytes copiados en pForm si la copia se ha completado correctamente. Si pForm es demasiado pequeño para contener todos los datos de los formularios enumerados, esta DWORD especifica el número de bytes necesarios.

[out] pcReturned

Puntero a un DWORD que recibe el número de estructuras de FORM_INFO_1 copiadas en pForm.

Valor devuelto

EngEnumForms devuelve TRUE si todos los parámetros son válidos y los datos de formulario enumerados se copian correctamente en pForm. De lo contrario, devuelve FALSE y se registra un mensaje de error. Para obtener información de error, llame a EngGetLastError.

Comentarios

Un controlador de impresora puede llamar a EngEnumForms para que GDI obtenga la lista de formularios admitidos por una impresora determinada. La información enumerada se devuelve como una matriz de estructuras de FORM_INFO_1 (declaradas en la documentación de Microsoft Windows SDK) a las que apunta pForm. Si la matriz a la que apunta pForm no es lo suficientemente grande como para contener los datos enumerados, el tamaño de matriz necesario se devuelve en su lugar en pcbNeeded.

Requisitos

Requisito Value
Cliente mínimo compatible Disponible en Windows 2000 y versiones posteriores de los sistemas operativos Windows.
Plataforma de destino Universal
Encabezado winddi.h (incluya Winddi.h)
Library Win32k.lib
Archivo DLL Win32k.sys

Consulte también

DrvEnablePDEV

EngGetLastError