> ## Documentation Index
> Fetch the complete documentation index at: https://docs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# DeployEx

> IXtfApplicationClient::DeployEx

# IXtfApplicationClient::DeployEx

지정된 앱 패키지를 배포합니다.

## 구문

```cpp theme={null}
public:
HRESULT DeployEx(
         LPCWSTR pszDeployFilepath,
         int deployTarget,
         BOOL fRemoveExtraFiles,
         IXtfDeployCallback *pCallback,
         BOOL *pfCanceled,
         int *pdwResult,
         LPBSTR pbstrPackageFullName,
         LPBSTR pbstrAumidJson
)  
```

### 매개 변수

*pszDeployFilepath*\
형식: LPCWSTR

배포할 콘텐츠의 \_원본 경로\_입니다.

*deployTarget*\
형식: int

배포할 드라이브를 나타냅니다. 허용되는 값과 그 의미는 다음과 같습니다:

* -1은 'xbconfig defaultstoragedevice'로 지정된 기본 배포 장치를 나타냅니다.
* 0은 정품 출시(Retail) 드라이브를 사용함을 의미합니다.
* 1은 개발용 드라이브가 있는 콘솔에서 개발용 드라이브를 사용함을 의미합니다.
* 2는 외장 드라이브 1을, 3은 외장 드라이브 2를 나타내며, 이런 식으로 이어집니다.

*fRemoveExtraFiles*\
형식: BOOL

이미 개발용 콘솔에 있지만 배포 패키지의 일부가 아닌 파일을 제거하려면 TRUE를 지정하고, 유지하려면 FALSE를 지정합니다.

*pCallback*\
형식: IXtfDeployCallback\*

배포 중에 추적 가능한 작업이 발생할 때 호출할 [IXtfDeployCallback](https://docs.xbox.com/ko/reference/tools/xtf/xtfapplication/classes/IXtfDeployCallback/ixtfdeploycallback-xtfapplication-xbox-microsoft-t.md) 콜백에 대한 포인터입니다. 배포 중에 콜백이 필요하지 않으면 `nullptr`로 설정하세요.

*pfCanceled*\
형식: BOOL\*

배포가 취소되었는지 여부를 나타내는 부울 값을 받는 포인터입니다.

*pdwResult*\
형식: int\*

배포 작업의 HRESULT를 받는 포인터입니다. 예를 들어, 열려 있는 파일 핸들 때문에 파일을 삭제할 수 없다면 이 매개 변수는 HRESULT 오류 코드를 받습니다.

*pbstrPackageFullName*\
형식: LPBSTR

배포된 앱 패키지의 전체 이름을 받는 포인터입니다(버전 번호, 아키텍처, 문화권 포함).

*pbstrAumidJson*\
형식: LPBSTR

앱 패키지와 연결된 AUMID 목록의 JSON 표현을 받는 포인터입니다. 이 목록의 모든 AUMID는 동일한 `PackageFamilyName`을 공유하지만, 각 AUMID의 느낌표("!") 뒤에는 서로 다른 AppId가 있습니다.

### 반환값

형식: HRESULT

성공하면 `S_OK`를 반환합니다. 그렇지 않으면 HRESULT 오류 코드를 반환합니다.

## 설명

이 메서드는 테스트를 위해 XBOX 개발 키트에 타이틀을 푸시 배포합니다. 타이틀은 `pszDeployFilepath`에 지정된 폴더에서 타이틀 스크래치 드라이브로 배포됩니다. 메서드가 배포를 성공적으로 완료하면 타이틀을 시작할 준비가 됩니다. 앱 패키지 배포에 대한 자세한 내용은 [Deploying your title to your XBOX Development Kit (NDA topic)](https://docs.xbox.com/ko/home/setup-install/concepts/deployment.md)를 참조하세요.

> [!NOTE]
>
> 이 함수는 동기 방식으로 실행됩니다.

이 메서드는 XBOX Tools Framework(XTF)의 일부로 포함된 애플리케이션 관리(xbapp.exe) 도구의 `xbapp deploy` 명령과 유사합니다. `xbapp deploy` 명령에 대한 자세한 내용은 [Application Management (xbapp.exe) (NDA topic)](https://docs.xbox.com/ko/tools/tools-console/commandlinetools/xbapp.md)을 참조하세요.

### LPBSTR 포인터 처리

이 함수가 반환하는 LPBSTR 포인터 처리에 대한 자세한 내용은 [Allocating and Releasing Memory for a BSTR](https://learn.microsoft.com/cpp/atl-mfc-shared/allocating-and-releasing-memory-for-a-bstr?view=vs-2019)을 참조하세요.

## 요구 사항

**헤더:** xtfapplication.h

**라이브러리:** xtfapplication.lib

**지원 플랫폼:** Windows(XBOX 콘솔 도구용)

## 참고 항목

[IXtfApplicationClient](https://docs.xbox.com/ko/reference/tools/xtf/xtfapplication/classes/IXtfApplicationClient/ixtfapplicationclient-xtfapplication-xbox-microsoft-t.md)\
[XtfApplication](https://docs.xbox.com/ko/reference/tools/xtf/xtfapplication/xtfapplication-xbox-microsoft-n.md)


## Related topics

- [IXtfApplicationClient 인터페이스 (인터페이스 콘텐츠)](https://docs.xbox.com/ko/reference/tools/xtf/xtfapplication/classes/IXtfApplicationClient/ixtfapplicationclient-xtfapplication-xbox-microsoft-t.md)
- [Deploy](https://docs.xbox.com/ko/reference/tools/xtf/xtfapplication/classes/IXtfApplicationClient/methods/deploy-ixtfapplicationclient-xtfapplication-xbox-microsoft-m.md)
- [XINPUT_VIBRATION_EX](https://docs.xbox.com/ko/reference/input/xinputongameinput/structs/xinput_vibration_ex.md)
- [GAMEPAD_REPORT_EX](https://docs.xbox.com/ko/reference/tools/xtf/xtfinput/structures/gamepad_report_ex.md)
- [ListUsersEx](https://docs.xbox.com/ko/reference/tools/xtf/xtfuser/classes/IXtfUserClient/methods/ixtfuserclient_listusersex.md)
