Metodo IAppxBundleWriter::AddPayloadPackage (appxpackaging.h)

Aggiunge un nuovo pacchetto di app al bundle.

Sintassi

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

Parametri

[in] fileName

Tipo: LPCWSTR

Nome del file payload. Il percorso del nome file deve essere relativo alla radice del pacchetto.

[in] packageStream

Tipo: IStream*

Oggetto IStream che fornisce il contenuto di fileName. Il flusso deve supportare Read, Seek e Stat.

Valore restituito

Tipo: HRESULT

Se il metodo ha esito positivo, restituisce S_OK. In caso contrario, restituisce un codice di errore che include, ma non è limitato a, quelli nella tabella seguente. I codici OPC di errore, oltre a OPC_E_DUPLICATE_PART possono risultare. Se il metodo ha esito negativo, il writer di bundle chiuderà in uno stato non riuscito e non può più essere usato.

Codice restituito Descrizione
E_NOT_VALID_STATE
Il writer viene chiuso.
HRESULT_FROM_WIN32(ERROR_INVALID_NAME)
Il nome del file specificato non è un nome file valido o è un nome riservato per un file di footprint.
OPC_E_DUPLICATE_PART
Il nome del file specificato è già in uso nel bundle.

Commenti

Quando il metodo AddPayloadFile ha esito positivo sul contenuto del fileName specificato viene scritto nel pacchetto e viene eseguita una voce corrispondente nella mappa dei blocchi del pacchetto.

AddPayloadPackage legge il contenuto del pacchetto dell'app da packageStream e archivia il contenuto nel bundle con il fileName specificato.

AddPayloadPackage può avere esito negativo se:

  • packageStream non recapita un pacchetto di app valido
  • Il pacchetto dell'app recapitato da packageStream si trova in una famiglia di pacchetti diversa rispetto a un pacchetto dell'app già aggiunto al bundle
  • Il pacchetto dell'app recapitato da packageStream è destinato a un'architettura che non può risiedere nello stesso bundle di un altro pacchetto dell'app già aggiunto al bundle
  • Il pacchetto dell'app recapitato da packageStream ha una mappa a blocchi che usa un metodo hash diverso rispetto a un pacchetto dell'app già aggiunto al bundle
  • fileName non è un nome file valido, è un nome riservato o è già usato da un altro pacchetto dell'app aggiunto al bundle

Requisiti

Requisito Valore
Client minimo supportato Windows 8.1 [solo app desktop]
Server minimo supportato Windows Server 2012 R2 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione appxpackaging.h

Vedi anche

IAppxBundleWriter