IBackgroundCopyCallback3::FileRangesTransferred メソッド (bits10_1.h)

BITS は、1 つ以上のファイル範囲がダウンロードされたときに FileRangesTransferred メソッドの実装を呼び出します。 ファイル範囲は、 IBackgroundCopyFile6::RequestFileRanges メソッドを使用してジョブに追加されます。

構文

HRESULT FileRangesTransferred(
  IBackgroundCopyJob     *job,
  IBackgroundCopyFile    *file,
  DWORD                  rangeCount,
  const BG_FILE_RANGE [] ranges
);

パラメーター

job

ジョブのプロパティ、進行状況、および状態情報にアクセスするためのメソッドを含む IBackgroundCopyJob オブジェクト。 pJob を解放しないでください。BITS は、メソッドが戻るときにインターフェイスを解放します。

file

範囲が変更されたファイルに関する情報を含む IBackgroundCopyFile オブジェクト。 pFile を解放しないでください。BITS は、メソッドが戻るときにインターフェイスを解放します。

rangeCount

範囲配列内のエントリの数。

ranges

FileRangesTransferred の最後の呼び出し以降、または IBackgroundCopyFile6::RequestFileRanges メソッドの最後の呼び出し以降に転送されたファイル範囲の配列。 範囲を解放しないでください。BITS は、FileRangesTransferred メソッドが戻るときに、範囲のメモリを解放します。

戻り値

このメソッドは、成功 したS_OK を返します。それ以外の場合は、エラー コードを返します。

注釈

このメソッドで返される範囲は、要求した範囲と一致しない可能性があります。 これは、BITS が同じバイト範囲を 2 回ダウンロードしないためです。また、BITS は範囲の一部がダウンロードされたときに報告できるためです。

実装では、リソースの最大読み込み条件下ですべての変更イベントが受信されない場合があります。

BITS は大量のイベントを生成します。状態と進行状況の情報のタイマーとポーリングを作成するか、このコールバックの使用を制限することを検討してください。 このコールバックを使用する場合は、実装を短くしてください。 BITS_JOB_PROPERTY_MINIMUM_NOTIFICATION_INTERVAL プロパティは、引き続きニーズを満たす最大値に設定する必要があります。これにより、不要なコールバックの数が減ります。

メモ BITS では、ユーザーごとに最大 4 つの同時通知がサポートされます。 1 つ以上のアプリケーションでユーザーの 4 つの通知すべてが返されないようにブロックされている場合、同じユーザーとして実行されているアプリケーションは、1 つ以上のブロック通知が返されるまで通知を受け取りません。
 

この関数の使用方法の例については、 IBackgroundCopyCallback3 インターフェイスのコード例を参照してください。

要件

要件
サポートされている最小のクライアント Windows 10バージョン 1703 [デスクトップ アプリのみ]
サポートされている最小のサーバー Windows Server 2016 [デスクトップ アプリのみ]
対象プラットフォーム Windows
ヘッダー bits10_1.h (Bits.h を含む)
Library Bits.lib

こちらもご覧ください

IBackgroundCopyCallback3