ISyncMgrSyncItem ::GetObject, méthode (syncmgr.h)
Crée un type spécifique d’objet lié à l’élément.
Syntaxe
HRESULT GetObject(
[in] REFGUID rguidObjectID,
[in] REFIID riid,
[out] void **ppv
);
Paramètres
[in] rguidObjectID
Type : REFGUID
GUID identifiant le type d’objet à créer. L’une des valeurs suivantes, telle que définie dans shlguid.h.
SYNCMGR_OBJECTID_BrowseContent
Objet implémentant l’interface ISyncMgrUIOperation qui montre l’interface utilisateur qui permet à l’utilisateur de parcourir le contenu de l’élément.
Le Centre de synchronisation demande uniquement cet objet si l’indicateur de fonctionnalité SYNCMGR_ICM_CAN_BROWSE_CONTENT est défini dans le masque récupéré par GetCapabilities.
SYNCMGR_OBJECTID_ConflictStore
Objet implémentant l’interface ISyncMgrConflictStore qui permet à un élément de fournir des conflits. Ces conflits sont affichés dans le dossier Conflits du centre de synchronisation. Le magasin de conflits doit inclure uniquement les conflits pour l’élément. Pour inclure des conflits pour tous les éléments d’un gestionnaire, le Centre de synchronisation appelle GetObject.
Le Centre de synchronisation demande uniquement cet objet si l’indicateur de capacité SYNCMGR_ICM_CONFLICT_STORE est défini dans le masque récupéré par GetCapabilities.
SYNCMGR_OBJECTID_EventStore
Objet implémentant l’interface ISyncMgrEventStore qui permet à un élément de fournir sa propre source d’événements. Ces événements sont affichés dans le dossier Résultats de la synchronisation. Le magasin d’événements doit inclure uniquement les événements pour l’élément. Pour inclure des événements pour tous les éléments d’un gestionnaire, le Centre de synchronisation appelle GetObject.
Le Centre de synchronisation demande uniquement cet objet si l’indicateur de capacité SYNCMGR_ICM_EVENT_STORE est défini dans le masque récupéré par GetCapabilities.
Un élément n’est pas nécessaire pour fournir un magasin d’événements. Le magasin d’événements par défaut fourni par le Centre de synchronisation peut être utilisé s’il répond aux exigences de l’élément.
SYNCMGR_OBJECTID_Icon
Objet d’extraction d’icône qui implémente l’interface IExtractIcon utilisée pour afficher une icône pour l’élément. Cet objet ne doit être fourni que si l’élément obtient son icône dynamiquement au moment de l’exécution. Le mécanisme préféré pour fournir l’icône consiste à inscrire l’icône en tant que DefaultIcon dans le Registre.
Le Centre de synchronisation demande uniquement cet objet si l’indicateur de capacité SYNCMGR_ICM_PROVIDES_ICON est défini dans le masque récupéré par GetCapabilities.
SYNCMGR_OBJECTID_QueryBeforeDelete
Objet implémentant l’interface ISyncMgrUIOperation qui affiche l’interface utilisateur lorsque l’utilisateur sélectionne l’élément dans le dossier du gestionnaire, puis sélectionne la tâche Supprimer . Avant de demander cet objet, le Centre de synchronisation crée un thread distinct pour cette opération et un nouveau instance de l’élément.
Le Centre de synchronisation demande uniquement cet objet si les indicateurs de capacité SYNCMGR_ICM_CAN_DELETE et SYNCMGR_ICM_QUERY_BEFORE_DELETE sont définis dans le masque récupéré par GetCapabilities.
SYNCMGR_OBJECTID_QueryBeforeEnable
Objet implémentant l’interface ISyncMgrUIOperation qui affiche l’interface utilisateur lorsque l’utilisateur sélectionne l’élément dans le dossier Centre de synchronisation, puis sélectionne la tâche Activer . Avant de demander cet objet, le Centre de synchronisation crée un thread distinct pour cette opération et un nouveau instance de l’élément.
Le Centre de synchronisation demande uniquement cet objet si l’indicateur de capacité SYNCMGR_ICM_QUERY_BEFORE_ENABLE est défini et que l’indicateur de stratégie SYNCMGR_IPM_PREVENT_ENABLE ne l’est pas.
SYNCMGR_OBJECTID_QueryBeforeDisable
Objet implémentant l’interface ISyncMgrUIOperation qui affiche l’interface utilisateur lorsque l’utilisateur sélectionne l’élément dans le dossier du gestionnaire, puis sélectionne la tâche Désactiver . Avant de demander cet objet, le Centre de synchronisation crée un thread distinct pour cette opération et un nouveau instance de l’élément.
Le Centre de synchronisation demande uniquement cet objet si l’indicateur de capacité SYNCMGR_ICM_QUERY_BEFORE_DELETE est défini et si l’indicateur de stratégie SYNCMGR_IPM_PREVENT_DISABLE ne l’est pas.
[in] riid
Type : REFIID
IID de l’interface demandée. Cela dépend du type d’objet nommé dans rguidObjectID.
[out] ppv
Type : void**
Lorsque cette méthode retourne, contient l’adresse d’un pointeur vers l’interface demandée.
Valeur retournée
Type : HRESULT
Retourne S_OK en cas de réussite, ou une valeur d’erreur dans le cas contraire. Retourne E_INVALIDARG si l’élément ne prend pas en charge le type d’objet demandé.
Remarques
L’élément peut implémenter l’interface demandée sur son gestionnaire ou l’implémenter sur un autre objet.
Exemples
L’exemple suivant montre une implémentation de cette méthode.
STDMETHODIMP CMyDeviceSyncItem::GetObject(__in REFGUID rguidObjectID,
__in REFIID riid,
__out void **ppv)
{
HRESULT hr = E_INVALIDARG;
*ppv = NULL;
if (rguidObjectID == SYNCMGR_OBJECTID_QueryBeforeDelete)
{
hr = _CreateQueryBeforeDeleteObject(riid, ppv);
}
else if (rguidObjectID == SYNCMGR_OBJECTID_EventStore)
{
hr = _CreateEventStore(_pszItemID, riid, ppv);
}
return hr;
}
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 |