Share via


Méthode IAppxBundleWriter ::AddPayloadPackage (appxpackaging.h)

Ajoute un nouveau package d’application au bundle.

Syntaxe

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

Paramètres

[in] fileName

Type : LPCWSTR

Nom du fichier de charge utile. Le chemin du nom de fichier doit être relatif à la racine du package.

[in] packageStream

Type : IStream*

IStream qui fournit le contenu de fileName. Le flux doit prendre en charge Read, Seek et Stat.

Valeur retournée

Type : HRESULT

Si la méthode réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur qui inclut, sans s’y limiter, ceux du tableau suivant. Des codes OPC d’erreur, en plus de OPC_E_DUPLICATE_PART peuvent se produire. Si la méthode échoue, l’enregistreur de bundles se ferme dans un état d’échec et ne peut plus être utilisé.

Code de retour Description
E_NOT_VALID_STATE
Le writer est fermé.
HRESULT_FROM_WIN32(ERROR_INVALID_NAME)
Le nom de fichier spécifié n’est pas un nom de fichier valide ou est un nom réservé pour un fichier d’empreinte.
OPC_E_DUPLICATE_PART
Le nom de fichier spécifié est déjà utilisé dans le bundle.

Remarques

Lorsque la méthode AddPayloadFile réussit, le contenu du fileName spécifié est écrit dans le package et une entrée correspondante est effectuée dans le mappage de blocs de package.

AddPayloadPackage lit le contenu du package d’application à partir de packageStream et stocke le contenu dans le bundle avec le fileName donné.

AddPayloadPackage peut échouer si :

  • packageStream ne fournit pas de package d’application valide
  • Le package d’application fourni par packageStream se trouve dans une famille de packages différente d’un package d’application déjà ajouté à l’offre groupée
  • Le package d’application fourni par packageStream est destiné à une architecture qui ne peut pas résider dans le même bundle qu’un autre package d’application déjà ajouté à l’offre groupée
  • Le package d’application fourni par packageStream a un mappage de blocs qui utilise une méthode de hachage différente d’un package d’application déjà ajouté à l’offre groupée
  • fileName n’est pas un nom de fichier valide, est un nom réservé ou est déjà utilisé par un autre package d’application ajouté au bundle

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 8.1 [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2012 R2 [applications de bureau uniquement]
Plateforme cible Windows
En-tête appxpackaging.h

Voir aussi

IAppxBundleWriter