IBackgroundCopyJob::GetError メソッド
エラーが発生した後にエラー インターフェイスを取得します。
配信の最適化では、ジョブの状態がBG_JOB_STATE_ERRORまたはBG_JOB_STATE_TRANSIENT_ERRORされると、エラー オブジェクトが生成されます。 IBackgroundCopyXXXX インターフェイス メソッドの呼び出しが失敗しても、サービスはエラー オブジェクトを作成しません。 エラー オブジェクトは、配信の最適化がジョブのデータの転送を開始するまで (ジョブの状態がBG_JOB_STATE_TRANSFERRINGに変更されるまで)、またはアプリケーションが終了するまで使用できます。
構文
HRESULT GetError(
[out] IBackgroundCopyError **ppError
);
パラメーター
-
ppError [out]
-
エラー コード、エラーの説明、およびエラーが発生したコンテキストを提供するエラー インターフェイス。 このパラメーターは、エラーが発生したときに転送されるファイルも識別します。 完了したら ppError を 解放します。
戻り値
このメソッドは、次の HRESULT 値だけでなく、他の値も返します。
リターン コード | 説明 |
---|---|
|
エラー オブジェクトが正常に生成されました。 |
|
エラー インターフェイスは、エラーが発生した後 (BG_JOB_STATE_ERRORまたはBG_JOB_STATE_TRANSIENT_ERROR)、配信の最適化がデータの転送を開始する前 (BG_JOB_STATE_TRANSFERRING) にのみ使用できます。 |
解説
ジョブは、致命的なエラー時にエラー状態になります。 ジョブがエラーになっているかどうかを判断するには、次のいずれかのオプションを使用します。
- ジョブの状態をポーリングするには、 IBackgroundCopyJob::GetState メソッドを呼び出します。 状態がBG_JOB_STATE_ERRORの場合、ジョブはエラーです。
- エラーが発生したときに通知を受信するには、 IBackgroundCopyCallback インターフェイス (具体的には JobError メソッド) を実装します。 次に、 IBackgroundCopyJob::SetNotifyInterface メソッドを呼び出してコールバックを登録し、 IBackgroundCopyJob::SetNotifyFlags メソッドを呼び出して、BG_NOTIFY_JOB_ERROR フラグを設定します。
IBackgroundCopyError インターフェイスには、エラーの原因と転送プロセスを続行できるかどうかを判断するために使用する情報が含まれています。 エラーの原因を特定したら、次のいずれかのオプションを実行します。
- ジョブを取り消すには、 IBackgroundCopyJob::Cancel メソッドを呼び出します。
- エラーが発生する前に正常に転送されたファイルを保存するには、 IBackgroundCopyJob::Complete メソッドを呼び出します。
- ジョブの処理を完了するには、問題を解決してから、 IBackgroundCopyJob::Resume メソッドを呼び出します。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント |
Windows 10バージョン 1709 [デスクトップ アプリのみ] |
サポートされている最小のサーバー |
Windows Server バージョン 1709 [デスクトップ アプリのみ] |
ヘッダー |
|
IDL |
|
ライブラリ |
|
[DLL] |
|
IID |
IID_IBackgroundCopyJobは 37668D37-507E-4160-9316-26306D150B12 と定義されています |