PCOPYFILE2_PROGRESS_ROUTINE コールバック関数 (winbase.h)
CopyFile2 関数で使用される、アプリケーション定義のコールバック関数。 これは、コピー操作または移動操作の一部が完了したときに呼び出されます。 PCOPYFILE2_PROGRESS_ROUTINE型は、このコールバック関数へのポインターを定義します。 CopyFile2ProgressRoutine は、アプリケーション定義関数名のプレースホルダーです。
構文
PCOPYFILE2_PROGRESS_ROUTINE Pcopyfile2ProgressRoutine;
COPYFILE2_MESSAGE_ACTION Pcopyfile2ProgressRoutine(
[in] const COPYFILE2_MESSAGE *pMessage,
[in, optional] PVOID pvCallbackContext
)
{...}
パラメーター
[in] pMessage
COPYFILE2_MESSAGE構造体へのポインター。
[in, optional] pvCallbackContext
CopyFile2 に渡されるCOPYFILE2_EXTENDED_PARAMETERS構造体の pvCallbackContext メンバーに渡される値のコピー。
戻り値
実行する必要があるアクションを示す COPYFILE2_MESSAGE_ACTION 列挙からの値。
リターン コード/値 | Description |
---|---|
|
コピー操作を続行します。 |
|
コピー操作を取り消します。 CopyFile2 関数は失敗し、 が返HRESULT_FROM_WIN32(ERROR_REQUEST_ABORTED) され、部分的にコピーされたフラグメントはすべて削除されます。
|
|
コピー操作を停止します。 CopyFile2 関数は失敗し、 が返HRESULT_FROM_WIN32(ERROR_REQUEST_ABORTED) され、部分的にコピーされたフラグメントはそのまま残ります。 copyFile2 関数に渡されるCOPYFILE2_EXTENDED_PARAMETERS構造体の dwCopyFlags メンバーにCOPY_FILE_RESTARTABLEが設定されている場合にのみ、COPY_FILE_RESUME_FROM_PAUSE フラグを使用して操作を再開できます。
|
|
コピー操作を続行しますが、この操作に対して CopyFile2ProgressRoutine コールバック関数を再度呼び出さないでください。 |
|
コピー操作を一時停止します。 ほとんどの場合、 CopyFile2 関数は失敗して 戻 HRESULT_FROM_WIN32(ERROR_REQUEST_PAUSED) り、部分的にコピーされたフラグメントはそのまま残ります (後でコピー操作を再開するために使用されるヘッダーを除きます)。一時停止要求が処理された時点でコピー操作が完了した場合、 CopyFile2 呼び出しは正常に完了し、再開ヘッダーは書き込まれなくなります。
|
注釈
COPYFILE2_CALLBACK_STREAM_FINISHED メッセージは、一時停止されたコピーの最後のメッセージです。 COPYFILE2_CALLBACK_STREAM_FINISHEDメッセージに応答してCOPYFILE2_PROGRESS_PAUSEが返された場合、それ以上のコールバックは送信されません。
PCOPYFILE2_PROGRESS_ROUTINE関数ポインター型を使用するアプリケーションをコンパイルするには、_WIN32_WINNT マクロを 0x0601 以降として定義します。 詳細については、「 Windows ヘッダーの使用」を参照してください。
Windows 8 と Windows Server 2012 では、この関数は、次のテクノロジによってサポートされています。
テクノロジ | サポートされています |
---|---|
サーバー メッセージ ブロック (SMB) 3.0 プロトコル | はい |
SMB 3.0 Transparent Failover (TFO) | はい |
スケールアウト ファイル共有 (SO) を使う SMB 3.0 | はい |
クラスターの共有ボリューム ファイル システム (CsvFS) | はい |
Resilient File System (ReFS) | はい |
必要条件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 8 [デスクトップ アプリ |UWP アプリ] |
サポートされている最小のサーバー | Windows Server 2012 [デスクトップ アプリ |UWP アプリ] |
対象プラットフォーム | Windows |
ヘッダー | winbase.h (Windows.h を含む) |