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 函式之 dwCopyFlags 成員中的 dwCopyFlagsCOPYFILE2_EXTENDED_PARAMETERS 成員中設定COPY_FILE_RESTARTABLE時,才能使用COPY_FILE_RESUME_FROM_PAUSE旗標重新啟動作業。
|
|
繼續複製作業,但不再次針對此作業呼叫 CopyFile2ProgressRoutine 回呼函式。 |
|
暫停複製作業。 在大部分情況下, CopyFile2 函式將會失敗並傳回 HRESULT_FROM_WIN32(ERROR_REQUEST_PAUSED) ,而且任何部分複製的片段都會保持不變 (,但寫入的標頭是稍後用來繼續複製作業的標頭。) 如果複製作業在處理暫停要求時完成, CopyFile2 呼叫將會順利完成,而且不會寫入任何繼續標頭。
|
備註
COPYFILE2_CALLBACK_STREAM_FINISHED訊息是暫停複本的最後一則訊息。 如果 傳回COPYFILE2_PROGRESS_PAUSE 以回應 COPYFILE2_CALLBACK_STREAM_FINISHED 訊息,則不會傳送進一步的回呼。
若要編譯使用 PCOPYFILE2_PROGRESS_ROUTINE 函式指標類型的應用程式,請將_WIN32_WINNT宏定義為 0x0601 或更新版本。 如需詳細資訊,請參閱 使用 Windows 標頭。
在 Windows 8 和 Windows Server 2012 中,下列技術支援此函式。
技術 | 支援 |
---|---|
伺服器消息塊 (SMB) 3.0 通訊協定 | Yes |
SMB 3.0 透明故障轉移 (TFO) | Yes |
具有向外延展檔案共用的SMB 3.0 (SO) | Yes |
叢集共用磁碟區文件系統 (CsvFS) | Yes |
彈性檔案系統 (ReFS) | Yes |
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 8 [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2012 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | winbase.h (包含 Windows.h) |