Freigeben über


IAppxPackageWriter::AddPayloadFile-Methode (appxpackaging.h)

Fügt dem App-Paket eine neue Nutzlastdatei hinzu.

Syntax

HRESULT AddPayloadFile(
  [in] LPCWSTR                 fileName,
  [in] LPCWSTR                 contentType,
  [in] APPX_COMPRESSION_OPTION compressionOption,
  [in] IStream                 *inputStream
);

Parameter

[in] fileName

Typ: LPCWSTR-

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

[in] contentType

Typ: LPCWSTR-

Die Zeichenfolge, die den InhaltstypfileNameangibt.

[in] compressionOption

Typ: APPX_COMPRESSION_OPTION

Der Komprimierungstyp, der zum Speichern FileName- im Paket verwendet werden soll.

[in] inputStream

Typ: IStream*

Ein IStream- den Inhalt FileNamebereitstellen. Der Datenstrom muss Read, Seekund Statunterstützen.

Rückgabewert

Typ: HRESULT-

Wenn die Methode erfolgreich ist, wird S_OKzurückgegeben. Andernfalls wird ein Fehlercode zurückgegeben, der die in der folgenden Tabelle aufgeführten Fehler enthält, jedoch nicht beschränkt ist. Fehler OPC-Codes können zusätzlich zu OPC_E_DUPLICATE_PART auftreten. Wenn die Methode fehlschlägt, wird der Paketschreiber in einem fehlerhaften Zustand geschlossen und kann nicht mehr verwendet werden.

Rückgabecode Beschreibung
E_INVALIDARG
Die durch compressionOption angegebene Komprimierungsoption ist keiner der Werte der APPX_COMPRESSION_OPTION Enumeration.
E_NOT_VALID_STATE
Der Autor ist geschlossen.
HRESULT_FROM_WIN32(ERROR_INVALID_NAME)
Der angegebene Dateiname ist kein gültiger Dateiname oder ein reservierter Name für eine Speicherabdruckdatei.
OPC_E_DUPLICATE_PART
Der angegebene Dateiname wird bereits im Paket verwendet.

Bemerkungen

Wenn die AddPayloadFile Methode erfolgreich ist, wird der Inhalt des angegebenen fileName in das Paket geschrieben und ein entsprechender Eintrag in der Paketblockzuordnung erfolgt.

Hinweis Dateien mit den folgenden reservierten Dateinamen nicht mithilfe der AddPayloadFile--Methode dem Paket hinzugefügt werden können:

AppxManifest.xml, AppxBlockMap.xml, AppxStreamMap.xmlund AppxSignature.p7x.

Dateien mit den folgenden reservierten Ordnerpräfixen können dem Paket nicht mithilfe der AddPayloadFile--Methode hinzugefügt werden: \AppxMetadata\ und \Microsoft.System.Package.Metadata\.

Beispiele

Ein Beispiel finden Sie unter Erstellen eines App-Pakets.

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

APPX_COMPRESSION_OPTION

IAppxPackageWriter-