> ## 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.

# OnDeployFileProgress

> IXtfDeployCallback::OnDeployFileProgress

# IXtfDeployCallback::OnDeployFileProgress

用于报告将文件部署到主机的进度的回调。

## 语法

```cpp theme={null}
public:
HRESULT OnDeployFileProgress(
         LPCWSTR pszFilePath,
         ULONGLONG ullBytesTransferred,
         ULONGLONG ullFileSize
)  
```

### 参数

*pszFilePath*\
类型：LPCWSTR

正在部署的文件的路径。

*ullBytesTransferred*\
类型：ULONGLONG

到目前为止已传输的字节数。

*ullFileSize*\
类型：ULONGLONG

正在传输的文件的总大小（以字节为单位）。

### 返回值

类型：HRESULT

返回 `S_OK` 以继续部署，或返回 HRESULT 错误代码以取消部署。

## 备注

此回调在部署系统将文件从部署 PC 传输到主机时调用。每为一个文件成功传输一个缓冲区块，就会调用此回调一次。每个成功传输的文件至少调用两次此回调：一次在部署开始时，一次在部署结束时。如果部署一个长度为零的文件，两次调用都将报告已传输零个字节（共零个字节）。有关文件如何评估以及在部署过程中何时调用回调的详细信息，请参阅 [IXtfDeployCallback Interface](https://docs.xbox.com/zh-CN/reference/tools/xtf/xtfapplication/classes/IXtfDeployCallback/ixtfdeploycallback-xtfapplication-xbox-microsoft-t.md)。

> [!NOTE]
>
> 部署的文件传输过程使用多个线程。你的代码必须确保按 `pszFilePath` 关联进度消息，并防范典型的多线程问题。

与 `IXtfDeployCallback` 的其他回调一样，如果此回调返回 `S_OK`，则部署过程继续。如果此回调返回任何 `HRESULT` 错误代码，则部署过程会立即取消。已传输或删除的文件保持原样，部分传输的文件将以其被截断的形式关闭。必须完成另一次部署，以确保主机上的所有文件完整且为最新。

## 要求

**头文件：** xtfapplication.h

**库：** xtfapplication.lib

**支持的平台：** Windows（用于 XBOX 主机工具）

## 另请参阅

[IXtfDeployCallback Interface](https://docs.xbox.com/zh-CN/reference/tools/xtf/xtfapplication/classes/IXtfDeployCallback/ixtfdeploycallback-xtfapplication-xbox-microsoft-t.md)\
[XtfApplication](https://docs.xbox.com/zh-CN/reference/tools/xtf/xtfapplication/xtfapplication-xbox-microsoft-n.md)


## Related topics

- [IXtfDeployCallback 接口（接口内容）](https://docs.xbox.com/zh-CN/reference/tools/xtf/xtfapplication/classes/IXtfDeployCallback/ixtfdeploycallback-xtfapplication-xbox-microsoft-t.md)
- [Deploy](https://docs.xbox.com/zh-CN/reference/tools/xtf/xtfapplication/classes/IXtfApplicationClient/methods/deploy-ixtfapplicationclient-xtfapplication-xbox-microsoft-m.md)
- [OnDeployExtraFileDetected](https://docs.xbox.com/zh-CN/reference/tools/xtf/xtfapplication/classes/IXtfDeployCallback/methods/ondeployextrafiledetected-ixtfdeploycallback-xtfapplication-x.md)
- [OnDeployExtraFileRemoved](https://docs.xbox.com/zh-CN/reference/tools/xtf/xtfapplication/classes/IXtfDeployCallback/methods/ondeployextrafileremoved-ixtfdeploycallback-xtfapplication-xb.md)
- [OnFileCopyProgress](https://docs.xbox.com/zh-CN/reference/tools/xtf/xtffileio/classes/IXtfCopyFileCallback/methods/onfilecopyprogress-ixtfcopyfilecallback-xtffileio-xbox-microsoft-m.md)
