ISyncMgrHandler::GetObject, méthode (syncmgr.h)

Crée un type spécifique d’objet lié au gestionnaire.

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 géré par le gestionnaire, tel qu’un dossier, un appareil, un ordinateur sur un réseau ou une application.

Le Centre de synchronisation demande uniquement cet objet si l’indicateur de fonctionnalité SYNCMGR_HCM_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 gestionnaire de fournir des conflits. Ces conflits sont affichés dans le dossier Conflits du centre de synchronisation. Le magasin de conflits doit inclure des conflits pour le gestionnaire ainsi que des conflits pour tous ses éléments. Pour inclure des conflits uniquement pour un élément spécifique, le Centre de synchronisation appelle GetObject.

Le Centre de synchronisation demande uniquement cet objet si l’indicateur de fonctionnalité SYNCMGR_HCM_CONFLICT_STORE est défini dans le masque récupéré par GetCapabilities.

SYNCMGR_OBJECTID_EventLinkClick

Objet implémentant l’interface ISyncMgrEventLinkUIOperation qui implémente l’action de clic pour un lien fourni sur un événement affiché dans le dossier Résultats de la synchronisation.

SYNCMGR_OBJECTID_EventStore

Objet implémentant l’interface ISyncMgrEventStore qui permet à un gestionnaire 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 des événements pour le gestionnaire ainsi que pour tous ses éléments. Pour inclure uniquement des événements pour un élément spécifique, le Centre de synchronisation appelle GetObject. Le magasin d’événements est invité à supprimer les événements du gestionnaire lors de la prochaine synchronisation du gestionnaire. Le magasin d’événements par défaut purge ses événements lorsque l’utilisateur se déconnecte.

Le Centre de synchronisation demande uniquement cet objet si l’indicateur de fonctionnalité SYNCMGR_HCM_EVENT_STORE est défini dans le masque récupéré par GetCapabilities.

Un gestionnaire 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 du gestionnaire.

SYNCMGR_OBJECTID_Icon

Objet d’extraction d’icône qui implémente l’interface IExtractIcon utilisée pour afficher une icône pour le gestionnaire. Cet objet ne doit être fourni que si le gestionnaire obtient son icône de manière dynamique 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 fonctionnalité SYNCMGR_HCM_PROVIDES_ICON est défini dans le masque récupéré par GetCapabilities.

SYNCMGR_OBJECTID_QueryBeforeActivate

Objet implémentant l’interface ISyncMgrUIOperation qui affiche l’interface utilisateur qui permet à l’utilisateur de configurer un gestionnaire. Cette interface utilisateur s’affiche lorsque l’utilisateur sélectionne le gestionnaire dans le dossier Installation de synchronisation, puis sélectionne la tâche d’installation . Avant de demander cet objet, le Centre de synchronisation crée un thread distinct pour cette opération et un nouveau instance du gestionnaire.

Le Centre de synchronisation demande uniquement cet objet si l’indicateur de fonctionnalité SYNCMGR_HCM_QUERY_BEFORE_ACTIVATE est défini dans le masque récupéré par GetCapabilities et si l’indicateur de stratégie SYNCMGR_HPM_PREVENT_ACTIVATE n’est pas défini dans le masque récupéré par GetPolicies.

SYNCMGR_OBJECTID_QueryBeforeDeactivate

Objet implémentant l’interface ISyncMgrUIOperation qui affiche l’interface utilisateur lorsque l’utilisateur sélectionne le gestionnaire dans le dossier Centre de synchronisation, 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 du gestionnaire.

Le Centre de synchronisation demande uniquement cet objet si l’indicateur de fonctionnalité SYNCMGR_HCM_QUERY_BEFORE_DEACTIVATE est défini dans le masque récupéré par GetCapabilities et si l’indicateur de stratégie SYNCMGR_HPM_PREVENT_DEACTIVATE n’est pas défini dans le masque récupéré par GetPolicies.

SYNCMGR_OBJECTID_QueryBeforeEnable

Objet implémentant l’interface ISyncMgrUIOperation qui affiche l’interface utilisateur lorsque l’utilisateur sélectionne le gestionnaire 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 du gestionnaire.

Le Centre de synchronisation demande uniquement cet objet si les indicateurs de fonctionnalité SYNCMGR_HCM_CAN_ENABLE et SYNCMGR_HCM_QUERY_BEFORE_ENABLE sont définis dans le masque récupéré par GetCapabilities.

SYNCMGR_OBJECTID_QueryBeforeDisable

Objet implémentant l’interface ISyncMgrUIOperation qui affiche l’interface utilisateur lorsque l’utilisateur sélectionne le gestionnaire dans le dossier Centre de synchronisation, puis sélectionne la tâche Désactiver . Avant de demander cet objet, le Centre de synchronisation crée à la fois un thread distinct pour cette opération et un nouveau instance du gestionnaire.

Le Centre de synchronisation demande uniquement cet objet si les indicateurs de fonctionnalité SYNCMGR_HCM_CAN_DISABLE et SYNCMGR_HCM_QUERY_BEFORE_DISABLE sont définis dans le masque récupéré par GetCapabilities.

SYNCMGR_OBJECTID_ShowSchedule

Objet implémentant l’interface ISyncMgrUIOperation qui affiche l’interface utilisateur qui permet à l’utilisateur de configurer la planification du gestionnaire. Avant de demander cet objet, le Centre de synchronisation crée un thread distinct pour cette opération et un nouveau instance du gestionnaire.

Le Centre de synchronisation demande uniquement cet objet si l’indicateur de fonctionnalité SYNCMGR_HCM_CAN_SHOW_SCHEDULE est défini dans le masque récupéré par GetCapabilities.

[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 est retournée, 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_NOTIMPL si le gestionnaire ne prend pas en charge le type d’objet demandé.

Remarques

Le gestionnaire peut implémenter l’interface demandée sur lui-même ou l’implémenter sur un autre objet.

Exemples

L’exemple suivant montre une implémentation de cette méthode.

STDMETHODIMP CMyDeviceHandler::GetObject( __in REFGUID   rguidObjectID, 
                                          __in REFIID    riid,
                                          __out void   **ppv)
{
    HRESULT hr = E_NOTIMPL;
    *ppv = NULL;

    if (rguidObjectID == SYNCMGR_OBJECTID_QueryBeforeActivate)
    {
        hr = _CreateSetupObject(riid, ppv);
    }
    else if (rguidObjectID == SYNCMGR_OBJECTID_EventStore)
    {
        hr = _CreateEventStore(NULL, riid, ppv);
    }

    return hr;
}

Configuration requise

   
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