Share via


Metodo IAppxFactory::CreateValidatedBlockMapReader (appxpackaging.h)

Crea un modello a oggetti mappa a blocchi di sola lettura dal contenuto fornito da un IStream e da una firma digitale.

Sintassi

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

Parametri

[in] blockMapStream

Tipo: IStream*

Flusso che fornisce xml mappa a blocchi per la lettura. Il flusso deve supportare Read, Seek e Stat.

[in] signatureFileName

Tipo: LPCWSTR

File contenente una firma digitale usata per convalidare il contenuto del flusso di input.

[out, retval] blockMapReader

Tipo: IAppxBlockMapReader**

Lettore mappa a blocchi.

Valore restituito

Tipo: HRESULT

Se il metodo ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore che include, ma non è limitato a, quelli seguenti. Questo metodo potrebbe restituire errori passati dalle API di convalida sottostanti usate. Ad esempio, questo metodo potrebbe restituire "Codici di errore Crypto e WinTrust (0x8009xxxx, 0x800bxxxx) se la firma non può essere letto, non è valida o non corrisponde al contenuto di blockMapStream.

Codice restituito Descrizione
APPX_E_INVALID_BLOCKMAP
BlockMapStream non contiene xml sintatticamente validi per la mappa a blocchi.

Commenti

Questo metodo viene usato quando la mappa a blocchi esiste da sola, all'esterno di un pacchetto dell'app. L'oggetto mappa a blocchi fornisce l'accesso a tutti gli elementi e gli attributi dei dati nel codice XML della mappa a blocchi.

Il parametro fileName deve includere il percorso di un file di firma digitale del pacchetto (con estensione p7x) su disco. Se questo parametro non è NULL, questo metodo convalida il formato del file di firma e convalida il contenuto di blockMapStream rispetto alla firma.

Requisiti

Requisito Valore
Client minimo supportato Windows 8 [solo app desktop]
Server minimo supportato Windows Server 2012 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione appxpackaging.h

Vedi anche

IAppxFactory

IAppxFactory::CreateBlockMapReader