Share via


IAppxBundleWriter::AddPayloadPackage-Methode (appxpackaging.h)

Fügt dem Paket ein neues App-Paket hinzu.

Syntax

HRESULT AddPayloadPackage(
  [in] LPCWSTR fileName,
  [in] IStream *packageStream
);

Parameter

[in] fileName

Typ: LPCWSTR

Der Name der Nutzlastdatei. Der Dateinamepfad muss relativ zum Stammverzeichnis des Pakets sein.

[in] packageStream

Typ: IStream*

Ein IStream , der den Inhalt von fileName bereitstellt. Der Stream muss Read, Seek und Stat unterstützen.

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. Fehler bei OPC-Codes können zusätzlich zu OPC_E_DUPLICATE_PART auftreten. Wenn die Methode fehlschlägt, wird der Bundle Writer in einem fehlerhaften Zustand geschlossen und kann nicht mehr verwendet werden.

Rückgabecode Beschreibung
E_NOT_VALID_STATE
Der Writer ist geschlossen.
HRESULT_FROM_WIN32(ERROR_INVALID_NAME)
Der angegebene Dateiname ist kein gültiger Dateiname oder ein reservierter Name für eine Footprintdatei.
OPC_E_DUPLICATE_PART
Der angegebene Dateiname wird bereits im Bundle verwendet.

Hinweise

Wenn die AddPayloadFile-Methode erfolgreich ist, wird der Inhalt der angegebenen dateiName in das Paket geschrieben, und ein entsprechender Eintrag wird in der Paketblockzuordnung vorgenommen.

AddPayloadPackage liest den Inhalt des App-Pakets aus packageStream und speichert den Inhalt im Bundle mit dem angegebenen FileName.

AddPayloadPackage kann fehlschlagen, wenn:

  • packageStream liefert kein gültiges App-Paket
  • Das von packageStream bereitgestellte App-Paket befindet sich in einer anderen Paketfamilie als ein App-Paket, das dem Paket bereits hinzugefügt wurde.
  • Das von packageStream bereitgestellte App-Paket richtet sich an eine Architektur, die sich nicht im selben Bündel wie ein anderes App-Paket befinden kann, das dem Paket bereits hinzugefügt wurde.
  • Das von packageStream bereitgestellte App-Paket verfügt über eine Blockzuordnung, die eine andere Hashmethode als ein App-Paket verwendet, das dem Paket bereits hinzugefügt wurde.
  • fileName ist kein gültiger Dateiname, ist ein reservierter Name oder wird bereits von einem anderen App-Paket verwendet, das dem Paket hinzugefügt wurde.

Anforderungen

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

Weitere Informationen

IAppxBundleWriter