Compartir a través de


Método IAppxFactory3::CreateManifestReader2 (appxpackaging.h)

Importante

Cierta información se relaciona con un producto de versión preliminar que puede modificarse sustancialmente antes de su publicación comercial. Microsoft no ofrece ninguna garantía, expresa o implícita, con respecto a la información proporcionada aquí.

Crea un modelo de objetos de manifiesto de solo lectura a partir del contenido proporcionado por un IStream, con un parámetro opcional para especificar el resumen esperado para el manifiesto.

Sintaxis

HRESULT CreateManifestReader2(
  [in]          IStream             *inputStream,
  [in,optional] LPCWSTR             expectedDigest,
  [out]         IAppxManifestReader **manifestReader
);

Parámetros

[in] inputStream

Flujo de entrada que entrega el XML del manifiesto para su lectura. La secuencia debe admitir ISequentialStream::Read, IStream::Seeky IStream::Stat. Si se produce un error en estos métodos, estos códigos de error se pueden pasar a este método y devolverlos.

[in,optional] expectedDigest

Un LPCWSTR que contiene el resumen esperado, una representación hash del archivo de manifiesto.

[out] manifestReader

Lector de manifiestos creado.

Valor devuelto

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_INVALID_MANIFEST El inputStream no contiene XML sintácticamente válido para el manifiesto.
APPX_E_DIGEST_MISMATCH El resumen del objeto no coincide con el resumen proporcionado en esperadoDigest.

Observaciones

Use CreateManifestReader2 para leer un manifiesto fuera de un paquete de aplicación. Este método valida el XML del manifiesto. El manifestReader proporciona acceso a todos los elementos de datos y atributos del xml del manifiesto. El manifiesto registra la ubicación de los errores de validación de manifiestos en el registro de eventos ETW para AppxPackaging.

Obtenga la cadena de resumen del parámetro de expecteDigest llamando a IAppxDigestProvider::GetDigest.

Ejemplos

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

Requisitos

Requisito Valor
encabezado de appxpackaging.h