Share via


IAppxFactory3::CreateManifestReader2-Methode (appxpackaging.h)

Wichtig

Einige Informationen beziehen sich auf ein Vorabrelease-Produkt, das vor der kommerziellen Freigabe erheblich geändert werden kann. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.

Erstellt ein schreibgeschütztes Manifestobjektmodell aus inhalten, die von einem IStream bereitgestellt werden, mit einem optionalen Parameter zum Angeben des erwarteten Digests für das Manifest.

Syntax

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

Parameter

[in] inputStream

Der Eingabestream, der das Manifest-XML zum Lesen übermittelt. Der Stream muss ISequentialStream::Read, IStream::Seek und IStream::Stat unterstützen. Wenn diese Methoden fehlschlagen, werden ihre Fehlercodes möglicherweise an diese Methode übergeben und von dieser zurückgegeben.

[in,optional] expectedDigest

Eine LPCWSTR mit dem erwarteten Digest, eine Hashdarstellung der Manifestdatei.

[out] manifestReader

Der erstellte Manifestleser.

Rückgabewert

Wenn die Methode erfolgreich ist, gibt sie S_OK zurück. Andernfalls wird ein Fehlercode zurückgegeben, der die Fehler in der folgenden Tabelle enthält, aber nicht beschränkt ist.

Rückgabecode Beschreibung
APPX_E_INVALID_MANIFEST Der inputStream enthält keine syntaktisch gültige XML-Datei für das Manifest.
APPX_E_DIGEST_MISMATCH Der Digest für das -Objekt stimmt nicht mit dem in expectedDigest bereitgestellten Digest überein.

Hinweise

Verwenden Sie CreateManifestReader2 , um ein Manifest außerhalb eines App-Pakets zu lesen. Diese Methode überprüft das Manifest-XML. ManifestReader bietet Zugriff auf alle Datenelemente und Attribute im Manifest-XML. Das Manifest protokolliert den Speicherort von Manifestüberprüfungsfehlern im ETW-Ereignisprotokoll für AppxPackaging.

Rufen Sie die Digestzeichenfolge für den parameter expecteDigest ab, indem Sie IAppxDigestProvider::GetDigest aufrufen.

Beispiele

Ein Beispiel finden Sie unter Schnellstart: Lesen von App-Paketmanifestinformationen.

Anforderungen

Anforderung Wert
Header appxpackaging.h