Поделиться через


Метод ISyncMgrSyncCallback::CanContinue (syncmgr.h)

Определяет, отменена ли синхронизация.

Синтаксис

HRESULT CanContinue(
  [in] LPCWSTR pszItemID
);

Параметры

[in] pszItemID

Тип: LPCWSTR

Указатель на буфер, содержащий идентификатор элемента.

Возвращаемое значение

Тип: HRESULT

Возвращаемое значение Значение
S_OK Отмена не запрошена. Синхронизация может продолжаться.
S_FALSE Запрошена отмена. Обработчик должен вызвать ISyncMgrSyncCallback::ReportProgress, указав SYNCMGR_PS_CANCELED в параметре nStatus .
E_INVALIDARG Значение, на которое указывает pszItemID , неизвестно центру синхронизации или не является элементом, управляемым этим обработчиком.
 

Если pszItemID имеет значение NULL или пустую строку, возвращаемое значение зависит от того, была ли запрошена отмена для всего обработчика.

Комментарии

Пользователь может отменить синхронизацию, щелкнув задачу Остановить или Остановить все в контекстном меню или в командном модуле. Его также можно отменить, когда приложение вызывает один из методов stop интерфейса ISyncMgrControl .

Реализуя эту функциональность как отдельный метод, обработчик может проверка для отмены, не сообщая о ходе выполнения.

Примеры

В следующем примере показано использование ISyncMgrSyncCallback::CanContinue методом Synchronize .

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
Header syncmgr.h