Compartir a través de


Método IPrintOemUI::CommonUIProp (prcomoem.h)

El método IPrintOemUI::CommonUIProp permite que un complemento de interfaz de usuario modifique una página de hojas de propiedades de impresora existente.

Sintaxis

HRESULT CommonUIProp(
  DWORD         dwMode,
  POEMCUIPPARAM pOemCUIPParam
);

Parámetros

dwMode

Constante entera proporcionada por el autor de la llamada que indica qué página de hoja de propiedades se debe modificar. Las siguientes constantes son válidas.

Valor Definición
OEMCUIP_DOCPROP Se llama al método para modificar la página Diseño, Papel/Calidad o Avanzadas de la hoja de propiedades del documento.
OEMCUIP_PRNPROP Se llama al método para modificar la página Configuración del dispositivo de la hoja de propiedades de la impresora.

pOemCUIPParam

Puntero proporcionado por el llamador a una estructura de OEMCUIPPARAM.

Valor devuelto

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

Código devuelto Descripción
S_OK
La operación se realizó correctamente.
E_FAIL
Error en la operación.
E_NOTIMPL
El método no se implementa.

Observaciones

Cuando se llama al método IPrintOemUI::CommonUIProp de un complemento de interfaz de usuario, debe devolver elementos de opción de hoja de propiedades personalizados para modificar una página de hojas de propiedades de impresora existente.

El IPrintOemUI::CommonUIProp método llama al archivo DLL de interfaz de impresora del controlador de impresora. El método debe proporcionar una matriz de OPTITEM estructuras que describen los elementos de la hoja de propiedades, junto con una función de devolución de llamada para procesar las modificaciones del usuario en los valores de opción.

Debe esperar que se llame al método dos veces para cada hoja de propiedades. El valor de parámetro dwMode del método indica si se llama a para realizar cambios en la hoja de propiedades de la impresora o en la hoja de propiedades del documento.

La primera vez que se llama, el método solo debe devolver el número de OPTITEM estructuras que se van a agregar. Este número debe colocarse en el miembro de la estructura cOEMOptItems. A continuación, el archivo DLL de interfaz de impresora asigna suficiente memoria para almacenar el número especificado de OPTITEMs y llama a IPrintOemUI::CommonUIProp de nuevo.

La segunda vez que se llama, el método IPrintOemUI::CommonUIProp debe hacer lo siguiente:

  • Rellene la matriz proporcionada por el controlador de estructuras OPTITEM con descripciones de opciones. La estructura OEMCUIPPARAM apunta a esta matriz miembro pOEMOptItems y el número de elementos de matriz asignados se encuentra en el miembro cOEMOptItems de la estructura. (Para obtener información sobre cómo especificar valores de miembro OPTITEM, consulte la descripción de la estructura OEMCUIPPARAM pOEMOptItems miembro).
  • Devuelve el número de estructuras agregadas a la matriz OPTITEM colocando el número en el miembro cOEMOptItems de la estructura OEMCUIPPARAM.
  • Devuelve la dirección de una función de devolución de llamada en el miembro de OEMCUIPCallback de la estructura OEMCUIPPARAM. Se llama a esta función de devolución de llamada cuando un usuario modifica la página de la hoja de propiedades. La función de devolución de llamada debe ser de tipo OEMCUIPCALLBACK.
  • Opcionalmente, devuelva la dirección de una estructura de datos privada colocándola en el miembro pOEMUser Data de la estructura OEMCUIPPARAM. La función de devolución de llamada especificada por el OEMCUIPCallback de la estructura recibe la dirección de la estructura OEMCUIPPARAM como parámetro de entrada y, por tanto, puede obtener la dirección de los datos privados.

    Se debe asignar espacio para la estructura de datos privada mediante una llamada a la función heapAlloc del SDK de Microsoft Windows, mediante el identificador contenido en el miembro hOEMHeap de la estructura OEMCUIPPARAM.

Si varios complementos de interfaz de usuario exportan IPrintOemUI::CommonUIProp métodos, se llama a los métodos en el orden en que se especifican los complementos para la instalación.

Para obtener más información, vea Modificar una página de hoja de propiedades de Driver-Supplied.

Requisitos

Requisito Valor
de la plataforma de destino de Escritorio
encabezado de prcomoem.h (include Prcomoem.h)