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
패키지에 fileName을 저장하는 데 사용할 압축 유형입니다.
[in] inputStream
형식: IStream*
fileName의 콘텐츠를 제공하는 IStream입니다. 스트림은 읽기, 검색 및 통계를 지원해야 합니다.
반환 값
형식: HRESULT
메서드가 성공하면 S_OK 반환합니다. 그렇지 않으면 다음 표의 오류 코드를 포함하지만 이에 국한되지 않는 오류 코드를 반환합니다. 오류 OPC 코드는 OPC_E_DUPLICATE_PART 외에도 발생할 수 있습니다. 메서드가 실패하면 패키지 작성기가 실패한 상태로 닫히며 더 이상 사용할 수 없습니다.
반환 코드 | 설명 |
---|---|
|
compressionOption으로 지정된 압축 옵션은 APPX_COMPRESSION_OPTION 열거형 값 중 하나가 아닙니다. |
|
작성기가 닫힌 경우 |
|
지정된 파일 이름이 올바른 파일 이름이 아니거나 공간 파일의 예약된 이름입니다. |
|
지정된 파일 이름이 패키지에서 이미 사용 중입니다. |
설명
AddPayloadFile 메서드가 성공하면 지정된 fileName의 내용이 패키지에 기록되고 패키지 블록 맵에 해당 항목이 만들어집니다.
AppxManifest.xml
, AppxBlockMap.xml
, AppxStreamMap.xml
및 AppxSignature.p7x
.
또한 다음과 같은 예약된 폴더 접두사를 가진 파일은 AddPayloadFile 메서드 \AppxMetadata\
\Microsoft.System.Package.Metadata\
및 를 사용하여 패키지에 추가할 수 없습니다.
예제
예제는 앱 패키지를 만드는 방법을 참조하세요.
요구 사항
지원되는 최소 클라이언트 | Windows 8 [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2012 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | appxpackaging.h |