Función PTConvertPrintTicketToDevMode (prntvpt.h)
Convierte un vale de impresión en una estructura DEVMODE .
Sintaxis
HRESULT PTConvertPrintTicketToDevMode(
[in] HPTPROVIDER hProvider,
[in] IStream *pPrintTicket,
EDefaultDevmodeType baseDevmodeType,
[in] EPrintTicketScope scope,
[out] ULONG *pcbDevmode,
[out] PDEVMODE *ppDevmode,
[out] BSTR *pbstrErrorMessage
);
Parámetros
[in] hProvider
Identificador de un proveedor de vales de impresión abierto. Este identificador lo devuelve la función PTOpenProvider o PTOpenProviderEx .
[in] pPrintTicket
Puntero a un IStream con su posición de búsqueda al principio del vale de impresión.
baseDevmodeType
Valor que indica si el DEVMODE predeterminado del usuario o el DEVMODE predeterminado de la cola de impresión se usa para proporcionar valores al DEVMODE de salida cuando pPrintTicket no especifica todas las opciones posibles para un DEVMODE.
[in] scope
Valor que especifica el ámbito de pPrintTicket. Este valor puede especificar una sola página, un documento completo o todos los documentos del trabajo de impresión. La configuración de pPrintTicket que está fuera del ámbito especificado se omite. Vea la sección Comentarios.
[out] pcbDevmode
Puntero al tamaño del DEVMODE en bytes.
[out] ppDevmode
Puntero al DEVMODE recién creado.
[out] pbstrErrorMessage
Puntero a una cadena que especifica qué, si hay algo, no es válido sobre pPrintTicket. Si es válido, es NULL.
Valor devuelto
Si la operación se realiza correctamente, se S_OK el valor devuelto.
Si hProvider se abrió en un subproceso diferente, HRESULT se E_INVALIDARG.
Si pPrintTicket no es válido, HRESULT se E_PRINTTICKET_FORMAT.
De lo contrario, se devuelve algún otro código de error en HRESULT. Para obtener más información sobre los códigos de error COM, vea Control de errores.
Comentarios
Si baseDevmodeType es kUserDefaultDevmode, pero el valor predeterminado del usuario no está disponible, se usará el valor predeterminado del dispositivo.
El DEVMODE devuelto puede ser internamente incoherente o entrar en conflicto con la configuración de la impresora dura, aunque cada configuración dentro de ella sea viable individualmente. Por ejemplo, si la impresora admite un dúplex opcional, pero pPrintTicket llama a dúplex, el DEVMODE devuelto también llamará a dúplex, incluso si el dúplex no está instalado. Use DocumentProperties para corregir el DEVMODE devuelto.
El búfer del ppDevmode devuelto debe liberarse con PTReleaseMemory.
Los valores de pPrintTicket que están fuera del ámbito se omiten. Por ejemplo, si el ámbito es solo una sola página, se omiten la configuración de todo el trabajo y la configuración de todo el documento. El ámbito del trabajo incluye el ámbito de documento y el ámbito de página. El ámbito del documento incluye el ámbito de página.
Si pbstrErrorMessage no es NULL cuando la función devuelve, el autor de la llamada debe liberar la cadena con SysFreeString.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Windows XP [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2003 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | prntvpt.h |
Library | Prntvpt.lib |
Archivo DLL | Prntvpt.dll |
Consulte también
Funciones de la API del administrador de trabajos de impresión