Função EnumForms
A função EnumForms enumera os formulários compatíveis com a impressora especificada.
Sintaxe
BOOL EnumForms(
_In_ HANDLE hPrinter,
_In_ DWORD Level,
_Out_ LPBYTE pForm,
_In_ DWORD cbBuf,
_Out_ LPDWORD pcbNeeded,
_Out_ LPDWORD pcReturned
);
Parâmetros
-
hPrinter [in]
-
Identificador para a impressora para a qual os formulários devem ser enumerados. Use a função OpenPrinter ou AddPrinter para recuperar um identificador de impressora.
-
Nível [in]
-
Especifica a versão da estrutura para a qual pForm aponta. Esse valor deve ser 1 ou 2.
-
pForm [out]
-
Ponteiro para uma ou mais estruturas FORM_INFO_1 ou para uma ou mais estruturas FORM_INFO_2 . Todas as estruturas terão o mesmo nível.
-
cbBuf [in]
-
Especifica o tamanho, em bytes, do buffer para o qual pForm aponta.
-
pcbNeeded [out]
-
Ponteiro para uma variável que recebe o número de bytes copiados para a matriz para a qual pForm aponta (se a operação for bem-sucedida) ou o número de bytes necessários (se falhar porque cbBuf é muito pequeno).
-
pcReturned [out]
-
Ponteiro para uma variável que recebe o número de estruturas copiadas para a matriz para a qual pForm aponta.
Valor retornado
Se a função for bem-sucedida, o valor retornado será um valor diferente de zero.
Se a função falhar, o valor retornado será zero.
Comentários
Observação
Essa é uma função de bloqueio ou síncrona e pode não retornar imediatamente. A rapidez com que essa função retorna depende de fatores de tempo de execução, como status de rede, configuração do servidor de impressão e fatores de implementação de driver de impressora que são difíceis de prever ao escrever um aplicativo. Chamar essa função de um thread que gerencia a interação com a interface do usuário pode fazer com que o aplicativo pareça não responder.
Se o chamador for remoto e o Level for 2, o valor StringType das estruturas de FORM_INFO_2 retornadas sempre será STRING_LANGPAIR.
No Windows Vista, os dados de formulário retornados por EnumForms são recuperados de um cache local quando hPrinter se refere a um servidor de impressão remoto ou a uma impressora hospedada por um servidor de impressão e há pelo menos uma conexão aberta com uma impressora no servidor de impressão remoto. Em todas as outras configurações, os dados do formulário são consultados do servidor de impressão remoto.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte |
Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte |
Windows 2000 Server [somente aplicativos da área de trabalho] |
Cabeçalho |
|
Biblioteca |
|
DLL |
|
Nomes Unicode e ANSI |
EnumFormsW (Unicode) e EnumFormsA (ANSI) |