Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Meldet den Status der Synchronisierung eines einzelnen Synchronisierungselements an das Synchronisierungscenter.
Syntax
HRESULT ReportProgress(
[in] LPCWSTR pszItemID,
[in] LPCWSTR pszProgressText,
[in] SYNCMGR_PROGRESS_STATUS nStatus,
[in] ULONG uCurrentStep,
[in] ULONG uMaxStep,
[out] SYNCMGR_CANCEL_REQUEST *pnCancelRequest
);
Parameter
[in] pszItemID
Typ: LPCWSTR
Ein Zeiger auf einen Puffer, der die eindeutige ID des Elements enthält, das gerade synchronisiert wird. Diese Zeichenfolge hat eine maximale Länge MAX_SYNCMGR_ID einschließlich des endenden NULL-Zeichens .
[in] pszProgressText
Typ: LPCWSTR
Ein Zeiger auf einen Puffer, der eine Unicode-Zeichenfolge für alle benutzerdefinierten Statusmeldungen für dieses Element enthält.
[in] nStatus
Ein Wert aus der SYNCMGR_PROGRESS_STATUS-Enumeration, der den aktuellen Fortschritt status der Synchronisierung angibt.
[in] uCurrentStep
Typ: ULONG
Der aktuelle Schritt der Synchronisierung. Wenn das SYNCMGR_PS_UPDATING_INDETERMINATE-Flag in nStatus festgelegt ist, wird dieser Parameter ignoriert.
[in] uMaxStep
Typ: ULONG
Die Gesamtanzahl der Schritte, die zum Abschließen der Synchronisierung des Elements erforderlich sind. Wenn das SYNCMGR_PS_UPDATING_INDETERMINATE-Flag in nStatus festgelegt ist, wird dieser Parameter ignoriert.
[out] pnCancelRequest
Typ: SYNCMGR_CANCEL_REQUEST*
Wenn diese Methode zurückgibt, zeigt auf einen Wert aus der SYNCMGR_CANCEL_REQUEST Enumeration, die die Art einer Abbruchanforderung angibt, falls vorhanden.
Rückgabewert
Typ: HRESULT
Wenn diese Methode erfolgreich ist, wird S_OK zurückgegeben. Andernfalls wird ein Fehlercode HRESULT zurückgegeben.
Hinweise
Wenn Sie den Status des Handlers anstelle einzelner Synchronisierungselemente melden möchten, rufen Sie ISyncMgrSyncCallback::SetHandlerProgressText auf.
Wenn die Synchronisierung abgebrochen wurde, ruft der Handler ein letztes Mal ISyncMgrSyncCallback::ReportProgress für das Element auf und bestätigt die Abbruchanforderung, indem er SYNCMGR_PS_CANCELED im nStatus-Parameter angibt. Dadurch wird die Benutzeroberfläche aktualisiert, und der Benutzer kann auch eine Synchronisierung für dieses Element neu starten.
Sobald diese Methode einen Abschluss status (SYNCMGR_PS_SUCCEEDED, SYNCMGR_PS_FAILED oder SYNCMGR_PS_CANCELED) meldet, kann nur noch SYNCMGR_PS_FAILED status Bericht erstellt werden. Jeder andere Wert bewirkt, dass diese Methode E_ACCESSDENIED zurückgibt und das Synchronisierungscenter das Element als fehlerhaft markiert.
Diese Methode ersetzt Progress.
Die maximale Länge einer Statuszeichenfolge ist MAX_SYNCMGR_PROGRESSTEXT. Diese Konstante ist in SyncMgr.h definiert.
Beispiele
Das folgende Beispiel zeigt die Verwendung von ISyncMgrSyncCallback::ReportProgress durch die Synchronize-Methode .
STDMETHODIMP CMyDeviceHandler::Synchronize(...)
{
...
// Start synchronizing the sync item.
...
// Construct a string to display in the Sync Center folder.
// Report the progress to Sync Center.
SYNCMGR_CANCEL_REQUEST nCancelRequest;
hr = pCallback->ReportProgress(pszItemID,
pszProgressText,
SYNCMGR_PS_UPDATING,
uCurrentStep,
uMaxStep,
&nCancelRequest);
if (SUCCEEDED(hr))
{
if (nCancelRequest != SYNCMGR_CR_NONE)
{
// Synchronization was canceled.
hr = pCallback->ReportProgress(pszItemID,
pszProgressText,
SYNCMGR_PS_CANCELED,
uCurrentStep,
uMaxStep,
NULL);
}
}
...
}
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows Vista [nur Desktop-Apps] |
Unterstützte Mindestversion (Server) | Windows Server 2008 [nur Desktop-Apps] |
Zielplattform | Windows |
Kopfzeile | syncmgr.h |