Share via


Método IXpsOMObjectFactory::CreatePackageWriterOnFile (xpsobjectmodel.h)

Abre un archivo para escribir el contenido de un OM XPS en un paquete XPS.

Sintaxis

HRESULT CreatePackageWriterOnFile(
  [in]          LPCWSTR                   fileName,
  [in]          LPSECURITY_ATTRIBUTES     securityAttributes,
  [in]          DWORD                     flagsAndAttributes,
  [in]          BOOL                      optimizeMarkupSize,
  [in]          XPS_INTERLEAVING          interleaving,
  [in]          IOpcPartUri               *documentSequencePartName,
  [in]          IXpsOMCoreProperties      *coreProperties,
  [in]          IXpsOMImageResource       *packageThumbnail,
  [in]          IXpsOMPrintTicketResource *documentSequencePrintTicket,
  [in]          IOpcPartUri               *discardControlPartName,
  [out, retval] IXpsOMPackageWriter       **packageWriter
);

Parámetros

[in] fileName

Nombre del archivo que se va a crear.

[in] securityAttributes

La estructura SECURITY_ATTRIBUTES , que contiene dos miembros independientes, pero relacionados:

  • lpSecurityDescriptor: un descriptor de seguridad opcional
  • bInheritHandle: un valor booleano que determina si los procesos secundarios pueden heredar el identificador devuelto.
Si lpSecurityDescriptor es NULL, al archivo o dispositivo asociado al identificador devuelto se le asigna un descriptor de seguridad predeterminado.

Para obtener más información sobre securityAttributes, vea CreateFile.

[in] flagsAndAttributes

Especifica la configuración y los atributos del archivo que se van a crear. Para la mayoría de los archivos, se puede usar el valor de FILE_ATTRIBUTE_NORMAL .

Consulte CreateFile para obtener más información sobre este parámetro.

[in] optimizeMarkupSize

Valor booleano que indica si el marcado de documento se optimizará para el tamaño cuando el contenido del OM XPS se escriba en el paquete XPS.

Valor Significado
VERDAD
El escritor de paquetes intentará optimizar el marcado para el tamaño mínimo.
FALSO
El escritor de paquetes no intentará realizar ninguna optimización.

[in] interleaving

Especifica si el contenido del OM XPS se intercalará cuando se escriba en el archivo.

[in] documentSequencePartName

Interfaz IOpcPartUri que contiene el nombre de parte de la secuencia de documentos en el nuevo archivo.

[in] coreProperties

La interfaz IXpsOMCoreProperties que contiene las propiedades principales del documento que se van a proporcionar al nuevo archivo. Este parámetro se puede establecer en NULL.

[in] packageThumbnail

La interfaz IXpsOMImageResource que contiene la imagen en miniatura que se asignará al nuevo archivo. Este parámetro se puede establecer en NULL.

[in] documentSequencePrintTicket

La interfaz IXpsOMPrintTicketResource que contiene el vale de impresión de nivel de paquete que se asignará al nuevo archivo. Este parámetro se puede establecer en NULL.

[in] discardControlPartName

Interfaz IOpcPartUri que contiene el nombre de la parte de control de descarte. Este parámetro se puede establecer en NULL.

[out, retval] packageWriter

Puntero a la nueva interfaz IXpsOMPackageWriter creada por este método.

Valor devuelto

El método devuelve un valor HRESULT. Entre los valores posibles se incluyen, entre otros, los de la tabla siguiente. Para obtener información sobre los valores devueltos de la API de documentos XPS que no aparecen en esta tabla, vea Errores del documento XPS.

Código devuelto Descripción
S_OK
El método se ha llevado a cabo de forma correcta.
E_POINTER
filename, documentSequencePartName o packageWriter es NULL.
XPS_E_NO_CUSTOM_OBJECTS
coreProperties, documentSequencePrintTicket o packageThumbnail no apunta a una implementación de interfaz reconocida. No se admite la implementación personalizada de interfaces de LA API de documentos XPS.
 

Este método llama a packaging API. Para obtener información sobre los valores devueltos de la API de empaquetado, consulte Errores de empaquetado.

Comentarios

El archivo se abre e inicializa y la interfaz IXpsOMPackageWriter que se devuelve se usa para escribir tipos de contenido, relaciones de paquete, propiedades principales, recursos de secuencia de documentos y relaciones de secuencia de documentos.

Si documentSequencePrintTicket se establece en NULL y el valor de intercalación se XPS_INTERLEAVING_ON, este método crea un vale de impresión de nivel de trabajo en blanco y agrega una relación al vale de impresión en blanco. Esto se hace para proporcionar un consumo de streaming más eficaz del paquete.

Si documentSequencePrintTicket se establece en NULL y el valor de intercalación se XPS_INTERLEAVING_OFF, no se crea ningún vale de impresión en blanco.

Requisitos

Requisito Value
Cliente mínimo compatible Windows 7, Windows Vista con SP2 y Platform Update para Windows Vista [aplicaciones de escritorio | Aplicaciones para UWP]
Servidor mínimo compatible Windows Server 2008 R2, Windows Server 2008 con SP2 y Actualización de plataforma para Windows Server 2008 [aplicaciones de escritorio | Aplicaciones para UWP]
Plataforma de destino Windows
Encabezado xpsobjectmodel.h

Consulte también

CreateFile

IXpsOMCoreProperties

IXpsOMImageResource

IXpsOMObjectFactory

IXpsOMPackageWriter

IXpsOMPrintTicketResource

Errores de empaquetado

SECURITY_ATTRIBUTES

XML Paper Specification

Errores del documento XPS