ISyncMgrSyncCallback::CanContinue 方法 (syncmgr.h)
判斷同步處理是否已取消。
語法
HRESULT CanContinue(
[in] LPCWSTR pszItemID
);
參數
[in] pszItemID
類型: LPCWSTR
緩衝區的指標,其中包含專案的標識碼。
傳回值
類型: HRESULT
傳回值 | 意義 |
---|---|
S_OK | 尚未要求取消。 同步處理可以繼續。 |
S_FALSE | 已要求取消。 處理程式應該呼叫 ISyncMgrSyncCallback::ReportProgress,並在 nStatus 參數中指定SYNCMGR_PS_CANCELED。 |
E_INVALIDARG | pszItemID 所指向的值對同步中心未知,或不是由這個處理程式管理的專案。 |
如果 pszItemID 為 NULL 或空字串,則傳回值取決於是否已要求整個處理程式的取消。
備註
使用者可以按下操作功能表上的 [停止 ] 或 [ 全部停止 ] 工作或命令模組,來取消同步處理。 當應用程式呼叫 ISyncMgrControl 介面的其中一個停止方法時,也可以取消它。
藉由將這項功能實作為個別方法,處理程式可以檢查是否有取消,而不需要報告進度。
範例
下列範例顯示 Synchronize 方法使用 ISyncMgrSyncCallback::CanContinue。
HRESULT CMyDeviceHandler::Synchronize(...)
{
...
// Start synchronizing the sync items.
...
// If a cancellation has been requested, stop the sync and exit.
if (pCallback->CanContinue(pszItemID) == S_FALSE)
{
// End the sync operation and exit the function.
hr = pCallback->ReportProgress(pszItemID,
pszCancelMessage,
SYNCMGR_PS_CANCELED,
uCurrentStep,
uMaxStep,
NULL);
}
...
}
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2008 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | syncmgr.h |