Método IPrintCoreUI2::EnumOptions (prcomoem.h)
O IPrintCoreUI2::EnumOptions
método enumera as opções disponíveis de um recurso específico.
Sintaxe
HRESULT EnumOptions(
[in] POEMUIOBJ poemuiobj,
[in] DWORD dwFlags,
[in] PCSTR pszFeatureKeyword,
[out] PZZSTR pmszOptionList,
[in] DWORD cbSize,
[out] PDWORD pcbNeeded
);
Parâmetros
[in] poemuiobj
Ponteiro para o contexto atual, uma estrutura OEMUIOBJ .
[in] dwFlags
É reservado e deve ser definido como zero.
[in] pszFeatureKeyword
Ponteiro para um buffer fornecido pelo chamador que contém uma cadeia de caracteres ASCII especificando um recurso palavra-chave cujas opções são solicitadas.
[out] pmszOptionList
Ponteiro para um buffer fornecido pelo chamador que recebe uma lista delimitada por NULL, no formato MULTI_SZ, contendo as palavras-chave de opção para o recurso palavra-chave apontado por pszFeatureKeyword. Essa lista é encerrada com dois caracteres nulos.
Defina esse parâmetro como NULL para simplesmente consultar o tamanho (*pcbNeeded) da lista de opções sem ter a lista preenchida.
[in] cbSize
Especifica o tamanho, em bytes, do buffer apontado por pmszOptionList.
[out] pcbNeeded
Ponteiro para um local de memória que recebe o tamanho real, em bytes, da lista de opções.
Retornar valor
Esse método deve retornar um dos valores a seguir.
Código de retorno | Descrição |
---|---|
|
O método foi bem-sucedido. |
|
O valor em cbSize era menor que o número de bytes a serem gravados no buffer de saída (o buffer apontado por pmszOptionList).
O método foi chamado com pmszOptionList definido como NULL. |
|
A cadeia de caracteres apontada por pszFeatureKeyword não é um recurso reconhecido.
O parâmetro poemuiobj apontou para um objeto de contexto inválido. |
|
(Somente Pscript) Não há suporte para o recurso de driver Pscript5 na configuração atual. O recurso de driver Pscript5 tem suporte na configuração atual, mas as opções do recurso de driver Pscript5 não são enumeráveis. |
|
Falha no método |
Comentários
Esse método tem suporte apenas para plug-ins do Windows XP Pscript5, não para plug-ins Unidrv.
Para reduzir a necessidade de fazer duas chamadas por acesso a dados, passe o método um buffer de saída de um tamanho fixo (1 KB, por exemplo) e, em seguida, marcar o valor retornado da função. Se o método retornar S_OK, o buffer já conterá os dados de interesse. Se o método retornar E_OUTOFMEMORY, o valor em *pcbNeeded será o tamanho do buffer necessário para manter os dados de interesse. Em seguida, o chamador deve alocar um buffer desse tamanho maior e prosseguir com uma segunda chamada para o método .
Para obter mais informações, consulte Usando EnumOptions.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Área de Trabalho |
Cabeçalho | prcomoem.h (inclua Prcomoem.h) |