Compartir a través de


Método IAppxFactory::CreatePackageReader (appxpackaging.h)

Crea un lector de paquetes de solo lectura a partir del contenido proporcionado por un IStream. Este método no valida la firma digital .

Sintaxis

HRESULT CreatePackageReader(
  [in]          IStream            *inputStream,
  [out, retval] IAppxPackageReader **packageReader
);

Parámetros

[in] inputStream

Tipo:*de IStream de

Flujo de entrada que entrega el contenido del paquete para su lectura. La secuencia debe admitir , Seeky Stat. Si se produce un error en estos métodos, es posible que estos códigos de error se pasen a este método y los devuelvan.

[out, retval] packageReader

Tipo:**IAppxPackageReader

Lector de paquetes.

Valor devuelto

Tipo: HRESULT

Si el método se realiza correctamente, devuelve S_OK. De lo contrario, devuelve un código de error que incluye, pero no está limitado a, los de la tabla siguiente.

Código devuelto Descripción
APPX_E_INTERLEAVING_NOT_ALLOWED
El archivo ZIP entregado por inputStream es un paquete OPC intercalado.
APPX_E_RELATIONSHIPS_NOT_ALLOWED
El paquete OPC entregado por inputStream contiene relaciones de paquete o pieza de OPC.
APPX_E_MISSING_REQUIRED_FILE
El paquete OPC entregado por inputStream no tiene un manifiesto o un mapa de bloques o un archivo de firma cuando hay un catálogo de CI presente.
APPX_E_INVALID_MANIFEST
El manifiesto del paquete no es válido.
APPX_E_INVALID_BLOCKMAP
La asignación de bloques de paquetes no es válida, la lista de archivos del directorio central ZIP no coincide con la lista de archivos del mapa de bloques o el tamaño de los archivos enumerados en el directorio central ZIP no coincide con los tamaños de archivo y bloque enumerados en el mapa de bloques.

Observaciones

El método CreatePackageReader recupera inmediatamente los elementos de superficie del paquete de la aplicación a través de la secuencia y valida su contenido. Este método solo se realiza correctamente si el paquete OPC y todos los elementos de superficie (incluido el directorio central ZIP, el manifiesto, [Content_Types].xmly el mapa de bloques) son válidos.

Ejemplos

Para obtener un ejemplo, consulta Inicio rápido: Extracción del contenido del paquete de la aplicación y Inicio rápido: Leer la información del manifiesto del paquete de la aplicación.

Requisitos

Requisito Valor
cliente mínimo admitido Windows 8 [solo aplicaciones de escritorio]
servidor mínimo admitido Windows Server 2012 [solo aplicaciones de escritorio]
de la plataforma de destino de Windows
encabezado de appxpackaging.h

Consulte también

IAppxFactory