Méthode ISyncMgrSyncCallback ::ReportEvent (syncmgr.h)
Fournit un événement à ajouter au dossier Résultats de synchronisation pour un élément en cours de synchronisation.
Syntaxe
HRESULT ReportEvent(
[in] LPCWSTR pszItemID,
[in] SYNCMGR_EVENT_LEVEL nLevel,
[in] SYNCMGR_EVENT_FLAGS nFlags,
[in] LPCWSTR pszName,
[in] LPCWSTR pszDescription,
[in] LPCWSTR pszLinkText,
[in] LPCWSTR pszLinkReference,
[in] LPCWSTR pszContext,
[out] GUID *pguidEventID
);
Paramètres
[in] pszItemID
Type : LPCWSTR
Pointeur vers une mémoire tampon qui contient l’ID unique de l’élément en cours de synchronisation. Cette chaîne est de longueur maximale MAX_SYNCMGR_ID y compris le caractère null de fin.
[in] nLevel
Type : SYNCMGR_EVENT_LEVEL
Valeur de l’énumération SYNCMGR_EVENT_LEVEL déclarant le type d’événement impliqué.
[in] nFlags
Type : SYNCMGR_EVENT_FLAGS
Non utilisé.
[in] pszName
Type : LPCWSTR
Pointeur vers une mémoire tampon qui contient le nom de l’événement.
[in] pszDescription
Type : LPCWSTR
Pointeur vers une mémoire tampon qui contient une description de l’événement.
[in] pszLinkText
Type : LPCWSTR
Pointeur vers une mémoire tampon qui contient le texte à utiliser dans un lien hypertexte vers l’élément. Ce paramètre peut avoir la valeur NULL
[in] pszLinkReference
Type : LPCWSTR
Pointeur vers une mémoire tampon qui contient l’URL de l’élément. Ce paramètre peut avoir la valeur NULL
[in] pszContext
Type : LPCWSTR
Données spécifiques au gestionnaire à associer à l’événement.
[out] pguidEventID
Type : GUID*
Lorsque cette méthode retourne, contient un pointeur vers un ID unique pour l’événement.
Valeur retournée
Type : HRESULT
Si cette méthode réussit, elle retourne S_OK. Sinon, elle retourne un code d’erreur HRESULT.
Remarques
Pour que le gestionnaire fournisse plus d’informations à l’utilisateur sur le résultat de synchronisation, la feuille de propriétés des résultats de synchronisation individuels signalés par le gestionnaire peut être étendue.
Cette méthode remplace LogError.
L’événement étant stocké uniquement en mémoire, tous les événements sont effacés lorsque l’utilisateur se déconnecte ou s’arrête. C’est l’une des raisons d’implémenter un ISyncMgrEventStore personnalisé, qui peut fournir ses événements n’importe où, y compris un fichier, via le réseau ou le registre. Toutefois, le dossier des résultats de la synchronisation affiche les événements fournis à la fois par le magasin d’événements interne et par les magasins d’événements personnalisés fournis par les gestionnaires de synchronisation.
Exemples
L’exemple suivant montre l’utilisation d’ISyncMgrSyncCallback ::ReportProgress par la méthode Synchronize .
STDMETHODIMP CMyDeviceHandler::Synchronize(...)
{
...
// Get the event receiver interface.
ISyncMgrEventReceiver *pEventReceiver = NULL;
hr = pCallback->QueryInterface(IID_ISyncMgrEventReceiver,
(void **) &pEventReceiver);
...
// Start synchronizing the sync item.
...
// Generate a GUID for this item.
// Construct a string to display in the Sync Results folder.
// Store the information about this event so we can display more details.
// Report the event to Sync Center.
hr = pEventReceiver->ReportEvent(pszItemID,
SYNCMGR_EL_INFORMATION,
SYNCMGR_EF_NONE,
pszEventName,
pszEventDescription,
NULL,
NULL,
NULL,
&guidEventID);
...
}
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows Vista [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows Server 2008 [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | syncmgr.h |