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

# IXtfDeployCallback インターフェイス (インターフェイスの内容)

> IXtfDeployCallback Interface

# IXtfDeployCallback インターフェイス

[IXtfApplicationClient::Deploy](https://devdocs.xbox.com/ja-jp/reference/tools/xtf/xtfapplication/classes/IXtfApplicationClient/methods/deploy-ixtfapplicationclient-xtfapplication-xbox-microsoft-m.md) 操作中に追跡可能なアクションが発生したときに呼び出されるコールバックを提供します。

## 構文

```cpp theme={null}
interface IXtfDeployCallback : public IUnknown  
```

## メソッド

| メソッド | 説明 |
| - | - |
| [OnDeployChangeEvaluation](https://devdocs.xbox.com/ja-jp/reference/tools/xtf/xtfapplication/classes/IXtfDeployCallback/methods/ondeploychangeevaluation-ixtfdeploycallback-xtfapplication-xb.md) | 転送または削除する必要のあるファイルを評価するときに呼び出されるコールバックです。 |
| [OnDeployError](https://devdocs.xbox.com/ja-jp/reference/tools/xtf/xtfapplication/classes/IXtfDeployCallback/methods/ondeployerror-ixtfdeploycallback-xtfapplication-xbox-windows.md) | 内部使用のために予約されています。 |
| [OnDeployExtraFileDetected](https://devdocs.xbox.com/ja-jp/reference/tools/xtf/xtfapplication/classes/IXtfDeployCallback/methods/ondeployextrafiledetected-ixtfdeploycallback-xtfapplication-x.md) | 追加のファイルが検出されたときに呼び出されるコールバックです。 |
| [OnDeployExtraFileRemoved](https://devdocs.xbox.com/ja-jp/reference/tools/xtf/xtfapplication/classes/IXtfDeployCallback/methods/ondeployextrafileremoved-ixtfdeploycallback-xtfapplication-xb.md) | 本体上の追加のファイルが削除されたことを報告するために呼び出されるコールバックです。 |
| [OnDeployFileProgress](https://devdocs.xbox.com/ja-jp/reference/tools/xtf/xtfapplication/classes/IXtfDeployCallback/methods/ondeployfileprogress-ixtfdeploycallback-xtfapplication-xbox-w.md) | 本体へのファイルのデプロイの進行状況を報告するために呼び出されるコールバックです |
| [OnDeployInitialized](https://devdocs.xbox.com/ja-jp/reference/tools/xtf/xtfapplication/classes/IXtfDeployCallback/methods/ondeployinitialized-ixtfdeploycallback-xtfapplication-xbox-wi.md) | デプロイが開始されたときに呼び出されるコールバックです。 |
| [OnDeployMetrics](https://devdocs.xbox.com/ja-jp/reference/tools/xtf/xtfapplication/classes/IXtfDeployCallback/methods/ondeploymetrics-ixtfdeploycallback-xtfapplication-xbox-window.md) | デプロイのメトリックが報告されるときに呼び出されるコールバックです。 |

## 解説

すべてのコールバック メソッドは、その戻り値に関して同じように動作します。 コールバックが成功した HResult を返すと、デプロイ プロセスは続行します。 コールバックが失敗した HResult を返すと、デプロイ プロセスは直ちにキャンセルされます。 既に転送または削除されたファイルはそのまま残り、部分的に転送されたファイルは切り詰められた形式で閉じられます。

コールバック プロセスは単純です。 デプロイ中の開発 PC 上の各ファイルは、対象の本体上の対応するファイルと比較されます。

* PC と本体でファイルが同じ場合、それ以上の処理は行われません。
* PC 上のファイルが本体上のファイルよりも新しい場合、そのファイルは PC から本体にコピーされます。
* ファイルが PC 上に存在し、本体上に存在しない場合、そのファイルは本体にコピーされます。
* ファイルが本体上に存在し、PC 上に存在しない場合、そのファイルは必要に応じて本体から削除されます。 (削除するかどうかは、[Deploy](https://devdocs.xbox.com/ja-jp/reference/tools/xtf/xtfapplication/classes/IXtfApplicationClient/methods/deploy-ixtfapplicationclient-xtfapplication-xbox-microsoft-m.md) の fRemoveExtraFiles パラメーターの値によって決まります)。

コールバック メソッドは、デプロイ プロセス中の適切なタイミングで呼び出されます。

1. [OnDeployInitialized](https://devdocs.xbox.com/ja-jp/reference/tools/xtf/xtfapplication/classes/IXtfDeployCallback/methods/ondeployinitialized-ixtfdeploycallback-xtfapplication-xbox-wi.md): このコールバックは、デプロイ システムが動作を開始したときに呼び出され、デプロイの計時を開始したり、進行状況ダイアログを初期化したりするために使用できます。 このコールバックが呼び出されると、すべての潜在的な相互運用と DLL 境界の交差が正常に完了しています。 このコールバックはデプロイごとに 1 回呼び出されます。
2. [OnDeployChangeEvaluation](https://devdocs.xbox.com/ja-jp/reference/tools/xtf/xtfapplication/classes/IXtfDeployCallback/methods/ondeploychangeevaluation-ixtfdeploycallback-xtfapplication-xb.md): このコールバックは、デプロイ システムが本体にデプロイする必要があるファイルまたは本体から削除するファイルを評価するときに呼び出されます。 このコールバックを使用して、進行状況インジケーターを更新できます。
3. [OnDeployMetrics](https://devdocs.xbox.com/ja-jp/reference/tools/xtf/xtfapplication/classes/IXtfDeployCallback/methods/ondeploymetrics-ixtfdeploycallback-xtfapplication-xbox-window.md): このコールバックは、評価プロセスの最後に 1 回呼び出され、本体にデプロイされるファイル数と転送される合計バイト数を報告します。
4. [OnDeployFileProgress](https://devdocs.xbox.com/ja-jp/reference/tools/xtf/xtfapplication/classes/IXtfDeployCallback/methods/ondeployfileprogress-ixtfdeploycallback-xtfapplication-xbox-w.md): このコールバックは、ファイルごとにバッファー ブロックが正常に転送されるたびに呼び出されます。 転送は複数のスレッドで同時に実行されるため、コードはファイル名で進行状況を追跡し、通常のマルチスレッドの問題から保護する必要があります。 このコールバックは、転送の開始時と終了時に 1 回ずつ呼び出されるため、ゼロ長のファイルではこのコールバックが 2 回呼び出されます。
5. [OnDeployExtraFileDetected](https://devdocs.xbox.com/ja-jp/reference/tools/xtf/xtfapplication/classes/IXtfDeployCallback/methods/ondeployextrafiledetected-ixtfdeploycallback-xtfapplication-x.md): PC 上にないファイルが本体上で見つかったことを示します。
6. [OnDeployExtraFileRemoved](https://devdocs.xbox.com/ja-jp/reference/tools/xtf/xtfapplication/classes/IXtfDeployCallback/methods/ondeployextrafileremoved-ixtfdeploycallback-xtfapplication-xb.md): [Deploy](https://devdocs.xbox.com/ja-jp/reference/tools/xtf/xtfapplication/classes/IXtfApplicationClient/methods/deploy-ixtfapplicationclient-xtfapplication-xbox-microsoft-m.md) の fRemoveExtraFiles パラメーターが TRUE に設定されていた場合、このコールバックは本体からファイルが削除されたときに呼び出されます。
7. [OnDeployError](https://devdocs.xbox.com/ja-jp/reference/tools/xtf/xtfapplication/classes/IXtfDeployCallback/methods/ondeployerror-ixtfdeploycallback-xtfapplication-xbox-windows.md) は現在の実装では使用されていませんが、将来の使用のために予約されています。

全体的なデプロイの進行状況を示したい場合、コードはこれまでの OnDeployFileProgress コールバックで名前が付けられた異なるファイルの数を、OnDeployMetrics コールバックに報告された合計ファイル数の割合として報告する必要があります。

## 要件

**ヘッダー:** xtfapplication.h

**ライブラリ:** xtfapplication.lib

**サポートされているプラットフォーム:** Windows (XBOX 本体ツール用)

## 関連項目

##### リファレンス

[XtfApplication](https://devdocs.xbox.com/ja-jp/reference/tools/xtf/xtfapplication/xtfapplication-xbox-microsoft-n)


## Related topics

- [IXtfRemoteRunCallback インターフェイス (インターフェイスの内容)](https://devdocs.xbox.com/ja-jp/reference/tools/xtf/xtfremoterun/classes/IXtfRemoteRunCallback/interfaces/ixtfremoteruncallback.md)
- [IXtfRunningProcessCallback (インターフェイスの内容)](https://devdocs.xbox.com/ja-jp/reference/tools/xtf/xtfconsolecontrol/interfaces/IXtfRunningProcessCallback/ixtfrunningprocesscallback.md)
- [IXtfConfigSettingsCallback (インターフェイスの内容)](https://devdocs.xbox.com/ja-jp/reference/tools/xtf/xtfconsolecontrol/interfaces/IXtfConfigSettingsCallback/ixtfconfigsettingscallback.md)
- [IXtfConsoleControlClient (インターフェイスの内容)](https://devdocs.xbox.com/ja-jp/reference/tools/xtf/xtfconsolecontrol/interfaces/IXtfConsoleControlClient/ixtfconsolecontrolclient.md)
- [ILampInfo (インターフェイスの内容)](https://devdocs.xbox.com/ja-jp/reference/lighting/lamparray/interfaces/ilampinfo/ilampinfo.md)
