Freigeben über


IAppxFactory::CreateValidatedBlockMapReader-Methode (appxpackaging.h)

Erstellt ein schreibgeschütztes Blockzuordnungsobjektmodell aus Inhalten, die von einem IStream- und einer digitalen Signatur bereitgestellt werden.

Syntax

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

Parameter

[in] blockMapStream

Typ: IStream-*

Der Datenstrom, der blockzuordnungs-XML zum Lesen bereitstellt. Der Datenstrom muss Read, Seekund Statunterstützen.

[in] signatureFileName

Typ: LPCWSTR-

Die Datei, die eine digitale Signatur enthält, mit der der Inhalt des Eingabedatenstroms überprüft wird.

[out, retval] blockMapReader

Typ: IAppxBlockMapReader-**

Der Blockzuordnungsleser.

Rückgabewert

Typ: HRESULT-

Wenn die Methode erfolgreich ist, wird S_OKzurückgegeben. Andernfalls wird ein Fehlercode zurückgegeben, der die unten aufgeführten Fehler enthält, aber nicht darauf beschränkt ist. Diese Methode gibt möglicherweise Fehler zurück, die von den zugrunde liegenden Überprüfungs-APIs übergeben werden, die verwendet werden. Diese Methode kann beispielsweise "Crypto and WinTrust error codes (0x8009xxxx, 0x800bxxxx) zurückgeben, wenn die Signatur nicht gelesen werden kann, ungültig ist oder nicht mit dem Inhalt von blockMapStreamübereinstimmt.

Rückgabecode Beschreibung
APPX_E_INVALID_BLOCKMAP
Die blockMapStream- enthält keine syntaktisch gültige XML für die Blockzuordnung.

Bemerkungen

Diese Methode wird verwendet, wenn die Blockzuordnung nur außerhalb eines App-Pakets vorhanden ist. Das Blockzuordnungsobjekt bietet Zugriff auf alle Datenelemente und Attribute im Blockzuordnungs-XML.

Der parameter fileName sollte den Pfad einer Paketdatei für digitale Signaturen (.p7x) auf dem Datenträger enthalten. Wenn dieser Parameter nicht NULL-ist, überprüft diese Methode das Format der Signaturdatei und überprüft den Inhalt blockMapStream- anhand der Signatur.

Anforderungen

Anforderung Wert
mindestens unterstützte Client- Windows 8 [nur Desktop-Apps]
mindestens unterstützte Server- Windows Server 2012 [nur Desktop-Apps]
Zielplattform- Fenster
Header- appxpackaging.h

Siehe auch

IAppxFactory-

IAppxFactory::CreateBlockMapReader