Compartilhar via


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

Cria um modelo de objeto de mapa de bloco somente leitura com base no conteúdo fornecido por um IStream e uma assinatura digital.

Sintaxe

HRESULT CreateValidatedBlockMapReader(
  [in]          IStream             *blockMapStream,
  [in]          LPCWSTR             signatureFileName,
  [out, retval] IAppxBlockMapReader **blockMapReader
);

Parâmetros

[in] blockMapStream

Tipo: IStream*

O fluxo que fornece XML de mapa de blocos para leitura. O fluxo deve dar suporte a Leitura, Busca e Estatística.

[in] signatureFileName

Tipo: LPCWSTR

O arquivo que contém uma assinatura digital usada para validar o conteúdo do fluxo de entrada.

[out, retval] blockMapReader

Tipo: IAppxBlockMapReader**

O leitor de mapa de blocos.

Retornar valor

Tipo: HRESULT

Se o método for bem-sucedido, ele retornará S_OK. Caso contrário, ele retornará um código de erro que inclui, mas não se limita a, aqueles abaixo. Esse método pode retornar erros passados das APIs de validação subjacentes que são usadas. Por exemplo, esse método pode retornar "Códigos de erro crypto e WinTrust (0x8009xxxx, 0x800bxxxx) se a assinatura não puder ser lida, for inválida ou não corresponder ao conteúdo de blockMapStream.

Código de retorno Descrição
APPX_E_INVALID_BLOCKMAP
O blockMapStream não contém XML sintaticamente válido para o mapa de blocos.

Comentários

Esse método é usado quando o mapa de blocos existe sozinho, fora de um pacote do aplicativo. O objeto de mapa de bloco fornece acesso a todos os elementos e atributos de dados no XML do mapa de blocos.

O parâmetro fileName deve incluir o caminho de um arquivo de assinatura digital do pacote (.p7x) no disco. Se esse parâmetro não for NULL, esse método validará o formato do arquivo de assinatura e validará o conteúdo de blockMapStream em relação à assinatura.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows 8 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2012 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho appxpackaging.h

Confira também

IAppxFactory

IAppxFactory::CreateBlockMapReader