Metodo ISyncMgrSyncCallback::CanContinue (syncmgr.h)
Determina se la sincronizzazione è stata annullata.
Sintassi
HRESULT CanContinue(
[in] LPCWSTR pszItemID
);
Parametri
[in] pszItemID
Tipo: LPCWSTR
Puntatore a un buffer contenente l'ID dell'elemento.
Valore restituito
Tipo: HRESULT
Valore restituito | Significato |
---|---|
S_OK | Non è stato richiesto un annullamento. La sincronizzazione può continuare. |
S_FALSE | È stato richiesto un annullamento. Il gestore deve chiamare ISyncMgrSyncCallback::ReportProgress, specificando SYNCMGR_PS_CANCELED nel parametro nStatus . |
E_INVALIDARG | Il valore a cui punta pszItemID è sconosciuto a Sync Center o non è un elemento gestito da questo gestore. |
Se pszItemID è NULL o una stringa vuota, il valore restituito dipende dal fatto che sia stato richiesto un annullamento per l'intero gestore.
Commenti
Una sincronizzazione può essere annullata dall'utente facendo clic sull'attività Arresta o Arresta tutto nel menu di scelta rapida o nel modulo di comando. Può anche essere annullato quando un'applicazione chiama uno dei metodi di arresto dell'interfaccia ISyncMgrControl .
Implementando questa funzionalità come metodo separato, il gestore può verificare la presenza di un annullamento senza segnalare lo stato di avanzamento.
Esempio
L'esempio seguente illustra l'utilizzo di ISyncMgrSyncCallback::CanContinue dal metodo 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);
}
...
}
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows Vista [solo app desktop] |
Server minimo supportato | Windows Server 2008 [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | syncmgr.h |