Freigeben über


IAppxFactory::CreatePackageReader-Methode (appxpackaging.h)

Erstellt einen schreibgeschützten Paketleser aus den von einem IStream bereitgestellten Inhalten. Diese Methode überprüft die digitale Signatur nicht.

Syntax

HRESULT CreatePackageReader(
  [in]          IStream            *inputStream,
  [out, retval] IAppxPackageReader **packageReader
);

Parameter

[in] inputStream

Typ: IStream*

Der Eingabestream, der den Inhalt des Pakets zum Lesen übermittelt. Der Stream muss Read, Seek und Stat unterstützen. Wenn diese Methoden fehlschlagen, werden ihre Fehlercodes möglicherweise an diese Methode übergeben und von dieser zurückgegeben.

[out, retval] packageReader

Typ: IAppxPackageReader**

Ein Paketleser.

Rückgabewert

Typ: HRESULT

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_INTERLEAVING_NOT_ALLOWED
Die von inputStream übermittelte ZIP-Datei ist ein verschachteltes OPC-Paket.
APPX_E_RELATIONSHIPS_NOT_ALLOWED
Das von inputStream bereitgestellte OPC-Paket enthält OPC-Paket-/Teilebeziehungen.
APPX_E_MISSING_REQUIRED_FILE
Das von inputStream bereitgestellte OPC-Paket verfügt nicht über ein Manifest, keine Blockzuordnung oder eine Signaturdatei, wenn ein CI-Katalog vorhanden ist.
APPX_E_INVALID_MANIFEST
Das Paketmanifest ist ungültig.
APPX_E_INVALID_BLOCKMAP
Die Paketblockzuordnung ist ungültig, die Liste der Dateien im zip-Zentralverzeichnis stimmt nicht mit der Liste der Dateien in der Blockzuordnung überein, oder die Größe der dateien, die im zentralen ZIP-Verzeichnis aufgeführt sind, stimmt nicht mit den datei- und blockgrößen überein, die in der Blockzuordnung aufgeführt sind.

Hinweise

Die CreatePackageReader-Methode ruft sofort Footprintelemente des App-Pakets über den Stream ab und überprüft deren Inhalt. Diese Methode ist nur erfolgreich, wenn das OPC-Paket und alle Footprint-Elemente (einschließlich ZIP-Zentralverzeichnis, Manifest, [Content_Types].xml und Blockzuordnung) gültig sind.

Beispiele

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

Anforderungen

   
Unterstützte Mindestversion (Client) Windows 8 [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2012 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile appxpackaging.h

Weitere Informationen

IAppxFactory