Método IPrintCoreUI2::GetOptions (prcomoem.h)
El método IPrintCoreUI2::GetOptions
recupera la configuración de características actual del controlador en el formato de una lista de pares de palabras clave de característica o opción.
Sintaxis
HRESULT GetOptions(
[in] POEMUIOBJ poemuiobj,
[in] DWORD dwFlags,
[in] PCZZSTR pmszFeaturesRequested,
[in] DWORD cbIn,
[out] PZZSTR pmszFeatureOptionBuf,
[in] DWORD cbSize,
[out] PDWORD pcbNeeded
);
Parámetros
[in] poemuiobj
Puntero al contexto actual, una estructura de OEMUIOBJ.
[in] dwFlags
Está reservado y debe establecerse en cero.
[in] pmszFeaturesRequested
Puntero al búfer proporcionado por el autor de la llamada que contiene una lista de palabras clave de características (en formato MULTI_SZ) cuya configuración se solicita. Establezca este parámetro en NULL para obtener la configuración de todas las características.
[in] cbIn
Especifica el tamaño, en bytes, del búfer al que apunta pmszFeaturesRequested. El tamaño incluye el último carácter MULTI_SZ null.
[out] pmszFeatureOptionBuf
Puntero a un búfer proporcionado por el autor de la llamada que recibe una lista de pares de palabras clave feature/option (en formato MULTI_SZ) obtenidos de la configuración del controlador. Cada par de palabras clave feature/option contiene el nombre de palabra clave de característica, un carácter NULL, el nombre de palabra clave de opción y otro carácter NULL. La lista finaliza con dos caracteres NULL.
[in] cbSize
Especifica el tamaño, en bytes, del búfer al que apunta pmszFeatureOptionBuf.
[out] pcbNeeded
Puntero a una ubicación de memoria que recibe el tamaño real, en bytes, de los pares de palabras clave feature/option.
Valor devuelto
El método debe devolver uno de los valores siguientes.
Código devuelto | Descripción |
---|---|
|
El método se realizó correctamente. |
|
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 pmszFeatureOptionBuf).
Se llamó al método con pmszFeatureOptionBuf establecido en NULL. |
|
Se proporcionó el búfer de entrada (el búfer al que apunta pmszFeaturesRequested), pero su contenido no estaba en formato MULTI_SZ.
El parámetro poemuiobj apuntaba a un objeto de contexto no válido. |
|
No se admite el método . |
|
Error en el método |
Observaciones
Este método solo se admite para los complementos de interfaz de usuario Pscript5 de Windows XP que reemplazan completamente las páginas de interfaz de usuario estándar del controlador principal y solo se admiten durante las funciones de IPrintOemUI::D ocumentPropertySheets y IPrintOemUI::D evicePropertySheets y sus rutinas de devolución de llamada de hoja de propiedades. Consulte Reemplazar Driver-Supplied páginas de hojas de propiedades para obtener más información.
Si no se reconoce o no se reconoce una palabra clave de característica solicitada, pero no se admite en el modo sticky actual ( document-sticky o printer-sticky - vea Reemplazar Driver-Supplied páginas de hojas de propiedades), o la palabra clave feature se reconoce pero actualmente no hay ninguna selección de opciones para ella, la característica simplemente se omite y el par de palabras clave feature/option no se coloca en el búfer de salida.
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 (por ejemplo, 1 KB) 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 *pcbNeededed 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 .
Para obtener más información, vea Using GetOptions and SetOptions.
Requisitos
Requisito | Valor |
---|---|
de la plataforma de destino de | Escritorio |
encabezado de | prcomoem.h (include Prcomoem.h) |
Consulte también
IPrintOemUI::D evicePropertySheets