Compartilhar via


Método IAppxPackageWriter::AddPayloadFile (appxpackaging.h)

Adiciona um novo arquivo de carga ao pacote do aplicativo.

Sintaxe

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

Parâmetros

[in] fileName

Tipo: LPCWSTR

O nome do arquivo de conteúdo. O caminho do nome do arquivo deve ser relativo à raiz do pacote.

[in] contentType

Tipo: LPCWSTR

A cadeia de caracteres que especifica o tipo de conteúdode fileName.

[in] compressionOption

Tipo: APPX_COMPRESSION_OPTION

O tipo de compactação a ser usado para armazenar fileName no pacote.

[in] inputStream

Tipo: IStream*

Um IStream que fornece o conteúdo de fileName. O fluxo deve dar suporte a Leitura, Busca e Estatística.

Valor retornado

Tipo: HRESULT

Se o método for bem-sucedido, ele retornará S_OK. Caso contrário, ele retorna um código de erro que inclui, mas não se limita a, aqueles na tabela a seguir. Códigos OPC de erro, além de OPC_E_DUPLICATE_PART podem resultar. Se o método falhar, o gravador de pacote será fechado em um estado com falha e não poderá mais ser usado.

Código de retorno Descrição
E_INVALIDARG
A opção de compactação especificada por compressionOption não é um dos valores da enumeração APPX_COMPRESSION_OPTION .
E_NOT_VALID_STATE
O gravador está fechado.
HRESULT_FROM_WIN32(ERROR_INVALID_NAME)
O nome do arquivo especificado não é um nome de arquivo válido ou é um nome reservado para um arquivo de volume.
OPC_E_DUPLICATE_PART
O nome do arquivo especificado já está em uso no pacote.

Comentários

Quando o método AddPayloadFile é bem-sucedido, o conteúdo do fileName especificado é gravado no pacote e uma entrada correspondente é feita no mapa do bloco de pacotes.

Nota Os arquivos com os seguintes nomes de arquivo reservados não podem ser adicionados ao pacote usando o método AddPayloadFile :

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

Além disso, os arquivos com os seguintes prefixos de pasta reservada não podem ser adicionados ao pacote usando o método AddPayloadFile : \AppxMetadata\ e \Microsoft.System.Package.Metadata\.

Exemplos

Para obter um exemplo, consulte Como criar um pacote de aplicativo.

Requisitos

   
Cliente mínimo com suporte Windows 8 [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2012 [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho appxpackaging.h

Confira também

APPX_COMPRESSION_OPTION

IAppxPackageWriter