Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
El método IPrintOemPrintTicketProvider::ConvertPrintTicketToDevMode convierte un vale de impresión en una estructura DEVMODEW.
Sintaxis
HRESULT ConvertPrintTicketToDevMode(
[in] IXMLDOMDocument2 *pPrintTicket,
[in] ULONG cbDevmode,
[in, out] PDEVMODE pDevmode,
[in] ULONG cbDrvPrivateSize,
[in] PVOID pPrivateDevmode
);
Parámetros
[in] pPrintTicket
Puntero al vale de impresión de entrada.
[in] cbDevmode
Tamaño, en bytes, de la estructura DEVMODEW de entrada. Este tamaño incluye las secciones públicas y privadas de la estructura DEVMODEW.
[in, out] pDevmode
Puntero a la estructura DEVMODEW de entrada. Cuando IPrintOemPrintTicketProvider::ConvertPrintTicketToDevMode devuelve, la estructura DEVMODEW privada del complemento contendrá información obtenida del vale de impresión.
[in] cbDrvPrivateSize
Tamaño, en bytes, de la estructura DEVMODEW privada del complemento.
[in] pPrivateDevmode
Puntero a la estructura de privada del complemento DEVMODEW.
Valor devuelto
IPrintOemPrintTicketProvider::ConvertPrintTicketToDevMode debe devolver S_OK si la operación se realiza correctamente. De lo contrario, este método debe devolver un código de error COM estándar.
Observaciones
El controlador principal llama al método IPrintOemPrintTicketProvider::ConvertPrintTicketToDevMode antes de realizar su parte de la conversión de un vale de impresión a una estructura de DEVMODEW. En la llamada a este método, el controlador principal pasa un vale de impresión de entrada que se rellena completamente y una estructura DEVMODEW que se establece en valores predeterminados. En la conversión, el complemento debe deshacer los cambios realizados en el vale de impresión durante la conversión anterior de una estructura DEVMODEW a un vale de impresión. Si, durante esta conversión anterior, el complemento movió una característica de un espacio de nombres privado al espacio de nombres público, el complemento debe restaurar la característica al espacio de nombres privado en un formato adecuado para el controlador principal, es decir, el formato en el que el controlador principal había colocado previamente la característica en el vale de impresión que se proporcionó al complemento en el IPrintOemPrintTicketProvider:: Método convertDevModeToPrintTicket. Esta restauración es necesaria para que el controlador principal pueda reconocer la característica en el vale de impresión y reflejar su configuración en la parte privada de la estructura DEVMODEW del controlador principal, mientras que el controlador principal realiza su parte de la conversión de vale de impresión a DEVMODEW .
Antes de que el sistema vuelva a convertir un vale de impresión en una estructura de DEVMODEW, primero carga la estructura DEVMODEW predeterminada. A continuación, el sistema llama al método IPrintOemPrintTicketProvider::BindPrinter del proveedor. A continuación, este método debe leer toda la configuración que admitía desde el vale de impresión y rellenar esos valores en la estructura DEVMODEW. Tenga en cuenta que no todas las características necesariamente se representarán y que, a menudo, las instancias de Option que están presentes podrían no contener todas las instancias de propiedad puntuada que el proveedor normalmente rellenaría. Si el proveedor realiza cambios en la configuración que rellena el sistema durante la conversión de un vale de impresión a DEVMODEW, el proveedor debe realizar la inversa de ese cambio en el método IPrintOemPrintTicketProvider::ConvertPrintTicketToDevMode. Una vez devuelto el proveedor, el sistema sobrescribe cualquier configuración pública de DEVMODEW representada en el vale de impresión, pero que el proveedor no deshabilita explícitamente.
Requisitos
Requisito | Valor |
---|---|
de la plataforma de destino de | Escritorio |
encabezado de | prcomoem.h (include Prcomoem.h) |