Condividi tramite


Metodo ISyncMgrSyncItem::GetObject (syncmgr.h)

Crea un tipo specifico di oggetto correlato all'elemento.

Sintassi

HRESULT GetObject(
  [in]  REFGUID rguidObjectID,
  [in]  REFIID  riid,
  [out] void    **ppv
);

Parametri

[in] rguidObjectID

Tipo: REFGUID

GUID che identifica il tipo di oggetto da creare. Uno dei valori seguenti, come definito in shlguid.h.

SYNCMGR_OBJECTID_BrowseContent

Oggetto che implementa l'interfaccia ISyncMgrUIOperation che mostra l'interfaccia utente che consente all'utente di esplorare il contenuto dell'elemento.

Sync Center richiede questo oggetto solo se il flag di funzionalità SYNCMGR_ICM_CAN_BROWSE_CONTENT è impostato nella maschera recuperata da GetCapabilities.

SYNCMGR_OBJECTID_ConflictStore

Oggetto che implementa l'interfaccia ISyncMgrConflictStore che consente a un elemento di fornire conflitti. Questi conflitti vengono visualizzati nella cartella Conflitti del Centro sincronizzazione. L'archivio dei conflitti deve includere conflitti solo per l'elemento. Per includere conflitti per tutti gli elementi di un gestore, Il Centro sincronizzazione chiama GetObject.

Sync Center richiede questo oggetto solo se il flag di funzionalità SYNCMGR_ICM_CONFLICT_STORE è impostato nella maschera recuperata da GetCapabilities.

SYNCMGR_OBJECTID_EventStore

Oggetto che implementa l'interfaccia ISyncMgrEventStore che consente a un elemento di fornire la propria origine di eventi. Questi eventi vengono visualizzati nella cartella Risultati sincronizzazione. L'archivio eventi deve includere solo gli eventi per l'elemento. Per includere eventi per tutti gli elementi di un gestore, Sync Center chiama GetObject.

Sync Center richiede questo oggetto solo se il flag di funzionalità SYNCMGR_ICM_EVENT_STORE è impostato nella maschera recuperata da GetCapabilities.

Non è necessario un elemento per fornire un archivio eventi. L'archivio eventi predefinito fornito da Sync Center può essere usato se soddisfa i requisiti dell'elemento.

SYNCMGR_OBJECTID_Icon

Oggetto di estrazione di icone che implementa l'interfaccia IExtractIcon utilizzata per visualizzare un'icona per l'elemento. Questo oggetto deve essere fornito solo se l'elemento ottiene l'icona in modo dinamico in fase di esecuzione. Il meccanismo preferito per fornire l'icona consiste nel registrare l'icona come DefaultIcon nel Registro di sistema.

Sync Center richiede questo oggetto solo se il flag di funzionalità SYNCMGR_ICM_PROVIDES_ICON è impostato nella maschera recuperata da GetCapabilities.

SYNCMGR_OBJECTID_QueryBeforeDelete

Oggetto che implementa l'interfaccia ISyncMgrUIOperation che visualizza l'interfaccia utente quando l'utente seleziona l'elemento nella cartella del gestore e quindi seleziona l'attività Elimina . Prima di richiedere questo oggetto, Sync Center crea sia un thread separato per questa operazione che una nuova istanza dell'elemento.

Sync Center richiede questo oggetto solo se i flag di funzionalità SYNCMGR_ICM_CAN_DELETE e SYNCMGR_ICM_QUERY_BEFORE_DELETE vengono impostati nella maschera recuperata da GetCapabilities.

SYNCMGR_OBJECTID_QueryBeforeEnable

Oggetto che implementa l'interfaccia ISyncMgrUIOperation che visualizza l'interfaccia utente quando l'utente seleziona l'elemento nella cartella Centro sincronizzazione e quindi seleziona l'attività Abilita . Prima di richiedere questo oggetto, Sync Center crea sia un thread separato per questa operazione che una nuova istanza dell'elemento.

Il Centro sincronizzazione richiede questo oggetto solo se il flag di funzionalità SYNCMGR_ICM_QUERY_BEFORE_ENABLE è impostato e il flag di criteri SYNCMGR_IPM_PREVENT_ENABLE non è impostato.

SYNCMGR_OBJECTID_QueryBeforeDisable

Oggetto che implementa l'interfaccia ISyncMgrUIOperation che visualizza l'interfaccia utente quando l'utente seleziona l'elemento nella cartella del gestore e quindi seleziona l'attività Disabilita . Prima di richiedere questo oggetto, Sync Center crea sia un thread separato per questa operazione che una nuova istanza dell'elemento.

Il Centro sincronizzazione richiede questo oggetto solo se il flag di funzionalità SYNCMGR_ICM_QUERY_BEFORE_DELETE è impostato e il flag di criteri SYNCMGR_IPM_PREVENT_DISABLE non è impostato.

[in] riid

Tipo: REFIID

IID dell'interfaccia richiesta. Dipende dal tipo di oggetto denominato in rguidObjectID.

[out] ppv

Tipo: void**

Quando termina, questo metodo contiene l'indirizzo di un puntatore all'interfaccia richiesta.

Valore restituito

Tipo: HRESULT

Restituisce S_OK in caso di esito positivo o un valore di errore in caso contrario. Restituisce E_INVALIDARG se l'elemento non supporta il tipo di oggetto richiesto.

Commenti

L'elemento può implementare l'interfaccia richiesta nel relativo gestore oppure può implementarla in un oggetto diverso.

Esempio

Nell'esempio seguente viene illustrata un'implementazione di questo metodo.

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;
}

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