Compartilhar via


Função EngEnumForms (winddi.h)

A função EngEnumForms enumera os formulários compatíveis com a impressora especificada.

Sintaxe

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

Manipule para a impressora para a qual os formulários devem ser enumerados. Esse é o identificador PDEV que é passado como o parâmetro hDriver de DrvEnablePDEV.

[in] Level

Especifica a versão da estrutura apontada por pForm. Esse valor deve ser 1, o que indica que os formulários enumerados devem ser retornados em estruturas de FORM_1_INFO.

[out, optional] pForm

Ponteiro para uma matriz de bytes na qual as estruturas de FORM_INFO_1 enumeradas são gravadas.

[in] cbBuf

Especifica o tamanho, em bytes, de lpbForms.

[out] pcbNeeded

Ponteiro para um DWORD que recebe o número de bytes copiados em pForm se a cópia for concluída com êxito. Se pForm for muito pequeno para conter todos os dados dos formulários enumerados, esse DWORD especificará o número de bytes necessários.

[out] pcReturned

Ponteiro para um DWORD que recebe o número de estruturas de FORM_INFO_1 copiadas para pForm.

Retornar valor

EngEnumForms retornará TRUE se todos os parâmetros forem válidos e os dados de formulário enumerados forem copiados com êxito para pForm. Caso contrário, ele retornará FALSE e uma mensagem de erro será registrada. Para obter informações de erro, chame EngGetLastError.

Comentários

Um driver de impressora pode chamar EngEnumForms para que o GDI obtenha a lista de formulários compatíveis com uma impressora específica. As informações enumeradas são retornadas como uma matriz de estruturas de FORM_INFO_1 (declaradas na documentação SDK do Microsoft Windows) apontadas por pForm. Se a matriz apontada por pForm não for grande o suficiente para manter os dados enumerados, o tamanho da matriz de requisitos será retornado em pcbNeeded.

Requisitos

Requisito Valor
Cliente mínimo com suporte Disponível no Windows 2000 e versões posteriores dos sistemas operacionais Windows.
Plataforma de Destino Universal
Cabeçalho winddi.h (inclua Winddi.h)
Biblioteca Win32k.lib
DLL Win32k.sys

Confira também

DrvEnablePDEV

EngGetLastError