IBackgroundCopyJob::GetError 方法 (bits.h)

在发生错误后检索错误接口。

当作业的状态为 BG_JOB_STATE_ERROR或BG_JOB_STATE_TRANSIENT_ERROR 时,BITS 将生成错误对象。 当对 IBackgroundCopyXXXX 接口方法的调用失败时,服务不会创建错误对象。 在 BITS 开始传输数据 (作业的状态更改为作业BG_JOB_STATE_TRANSFERRING) 或应用程序退出之前,错误对象才可用。

语法

HRESULT GetError(
  [out] IBackgroundCopyError **ppError
);

参数

[out] ppError

错误接口,提供错误代码、错误说明以及发生错误的上下文。 此参数还标识发生错误时正在传输的文件。 完成后释放 ppError

返回值

此方法返回以下 HRESULT 值以及其他值。

返回代码 说明
S_OK
已成功生成错误对象。
BG_E_ERROR_INFORMATION_UNAVAILABLE
只有在发生错误 (BG_JOB_STATE_ERROR 或BG_JOB_STATE_TRANSIENT_ERROR) 以及 BITS 开始 (BG_JOB_STATE_TRANSFERRING) 传输数据之前,错误接口才可用。

注解

GetNoProgressTimeout 方法) 检索此时间段 (,作业将置于严重错误时处于错误状态,或者在暂时性错误 (无进度超时期限到期后。 使用以下选项之一来确定作业是否出错:

IBackgroundCopyError 接口包含用于确定错误原因以及传输过程是否可以继续的信息。 确定错误原因后,执行以下选项之一: 如果作业保持错误状态 90 天 (默认 JobInactivityTimeout 组策略) ,则服务将从队列中删除作业并删除客户端上的临时文件;作业删除不会影响已成功上传的文件。

若要确定上载-答复作业的上传、答复或服务器应用程序部分是否失败,请调用 IBackgroundCopyError::GetError 方法以检索发生错误的 上下文 。 如果上下文BG_ERROR_CONTEXT_REMOTE_APPLICATION,则服务器应用程序失败。 如果错误与上传或回复有关,则上下文BG_ERROR_CONTEXT_REMOTE_FILE。 如果BG_SIZE_UNKNOWN BG_JOB_REPLY_PROGRESS结构的 BytesTotal 成员,上传失败。 否则,答复将失败。

示例

请参阅 处理错误 主题中的示例代码。

要求

要求
最低受支持的客户端 Windows XP
最低受支持的服务器 Windows Server 2003
目标平台 Windows
标头 bits.h
Library Bits.lib
DLL QmgrPrxy.dll

另请参阅

IBackgroundCopyCallback::JobError

IBackgroundCopyError

IBackgroundCopyJob::GetState