共用方式為


IAppxPackageWriter::AddPayloadFile 方法 (appxpackaging.h)

將新的承載檔案新增至應用程式套件。

語法

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

參數

[in] fileName

類型: LPCWSTR

承載檔案的名稱。 檔案名路徑必須相對於封裝的根目錄。

[in] contentType

類型: LPCWSTR

指定fileName內容類型的字串。

[in] compressionOption

類型: APPX_COMPRESSION_OPTION

用來將 fileName 儲存在封裝中的壓縮類型。

[in] inputStream

類型: IStream*

IStream提供fileName的內容。 資料流程必須支援 讀取搜尋統計資料

傳回值

類型: HRESULT

如果方法成功,則會傳回 S_OK。 否則,它會傳回錯誤碼,其中包含下表中的錯誤碼,但不限於這些錯誤碼。 除了OPC_E_DUPLICATE_PART之外,可能會產生錯誤 OPC 碼。 如果方法失敗,封裝寫入器將會處於失敗狀態關閉,而且無法再使用。

傳回碼 Description
E_INVALIDARG
compressionOption指定的壓縮選項不是APPX_COMPRESSION_OPTION列舉的其中一個值。
E_NOT_VALID_STATE
寫入器已關閉。
HRESULT_FROM_WIN32 (ERROR_INVALID_NAME)
指定的檔案名不是有效的檔案名,或是使用量檔案的保留名稱。
OPC_E_DUPLICATE_PART
指定的檔案名已經在封裝中使用。

備註

當 AddPayloadFile方法成功時,指定的fileName內容會寫入封裝,並在套件區塊對應中建立對應的專案。

注意 使用 AddPayloadFile 方法,無法將具有下列保留檔案名的檔案新增至套件:

AppxManifest.xmlAppxBlockMap.xmlAppxStreamMap.xmlAppxSignature.p7x

此外,使用 AddPayloadFile 方法無法將具有下列保留資料夾前置詞的檔案新增至套件: \AppxMetadata\\Microsoft.System.Package.Metadata\

範例

如需範例,請參閱 如何建立應用程式套件

規格需求

   
最低支援的用戶端 Windows 8 [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2012 [僅限傳統型應用程式]
目標平台 Windows
標頭 appxpackaging.h

另請參閱

APPX_COMPRESSION_OPTION

IAppxPackageWriter