Compartir a través de


Método IPrintCorePS2::EnumOptions (prcomoem.h)

El IPrintCorePS2::EnumOptions método enumera las opciones disponibles de una característica específica.

Sintaxis

HRESULT EnumOptions(
  [in]  PDEVOBJ pdevobj,
  [in]  DWORD   dwFlags,
  [in]  PCSTR   pszFeatureKeyword,
  [out] PSTR    pmszOptionList,
  [in]  DWORD   cbSize,
  [out] PDWORD  pcbNeeded
);

Parámetros

[in] pdevobj

Puntero a una estructura DEVOBJ .

[in] dwFlags

Está reservado y debe establecerse en cero.

[in] pszFeatureKeyword

Puntero a un búfer proporcionado por el autor de la llamada que contiene una cadena ASCII, especificando una palabra clave de característica cuyas opciones se solicitan.

[out] pmszOptionList

Puntero a un búfer proporcionado por el autor de la llamada que recibe una lista delimitada por null, en formato de MULTI_SZ, que contiene las palabras clave de opción para la palabra clave de característica a la que apunta pszFeatureKeyword. Esta lista finaliza con dos caracteres NULL.

Establezca este parámetro en NULL para simplemente consultar el tamaño (*pcbNeeded) de la lista de opciones sin tener la lista rellenada.

[in] cbSize

Especifica el tamaño, en bytes, del búfer al que apunta pmszOptionList.

[out] pcbNeeded

Puntero a una ubicación de memoria que recibe el tamaño real, en bytes, de los datos solicitados.

Valor devuelto

Este método debe devolver uno de los siguientes valores.

Código devuelto Descripción
S_OK
El método se ha llevado a cabo de forma correcta.
E_OUTOFMEMORY
El valor de cbSize era menor que el número de bytes que se van a escribir en el búfer de salida (el búfer al que apunta pmszOptionList).

Se llamó al método con pmszOptionList establecido en NULL.

E_INVALIDARG
La cadena a la que apunta pszFeatureKeyword no es una característica reconocida.

El parámetro pdevobj apuntaba a un objeto de contexto de controlador no válido.

E_NOTIMPL
(solo Pscript)

La característica del controlador Pscript5 no se admite en la configuración actual.

La característica del controlador Pscript5 se admite en la configuración actual, pero las opciones de la característica del controlador Pscript5 no son enumerables.

E_FAIL
Error en el método.

Comentarios

Para reducir la necesidad de realizar dos llamadas por acceso a datos, pase el método un búfer de salida de un tamaño fijo (1 KB, por ejemplo) y, a continuación, compruebe el valor devuelto de la función. Si el método devuelve S_OK, el búfer ya contiene los datos de interés. Si el método devuelve E_OUTOFMEMORY, el valor de *pcbNeeded es el tamaño del búfer necesario para contener los datos de interés. A continuación, el autor de la llamada debe asignar un búfer de ese tamaño mayor y continuar con una segunda llamada al método .

Este método es compatible con cualquier complemento de representación de Pscript5.

Para obtener más información, vea Uso de EnumOptions.

Requisitos

Requisito Value
Plataforma de destino Escritorio
Encabezado prcomoem.h (include Prcomoem.h)

Consulte también

DEVOBJ

IPrintCorePS2

IPrintCorePS2::EnumFeatures