Bagikan melalui


Metode ISyncMgrSyncItem::GetObject (syncmgr.h)

Membuat tipe objek tertentu yang terkait dengan item.

Sintaks

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

Parameter

[in] rguidObjectID

Jenis: REFGUID

GUID yang mengidentifikasi jenis objek yang akan dibuat. Salah satu nilai berikut seperti yang didefinisikan dalam shlguid.h.

SYNCMGR_OBJECTID_BrowseContent

Objek yang mengimplementasikan antarmuka ISyncMgrUIOperation yang menunjukkan UI yang memungkinkan pengguna untuk menelusuri konten item.

Pusat Sinkronisasi hanya meminta objek ini jika bendera kemampuan SYNCMGR_ICM_CAN_BROWSE_CONTENT diatur dalam masker yang diambil oleh GetCapabilities.

SYNCMGR_OBJECTID_ConflictStore

Objek yang mengimplementasikan antarmuka ISyncMgrConflictStore yang memungkinkan item untuk memberikan konflik. Konflik ini ditampilkan di folder Konflik Pusat Sinkronisasi. Penyimpanan konflik harus mencakup konflik hanya untuk item. Untuk menyertakan konflik untuk semua item handler, Sync Center memanggil GetObject.

Pusat Sinkronisasi hanya meminta objek ini jika bendera kemampuan SYNCMGR_ICM_CONFLICT_STORE diatur dalam masker yang diambil oleh GetCapabilities.

SYNCMGR_OBJECTID_EventStore

Objek yang mengimplementasikan antarmuka ISyncMgrEventStore yang memungkinkan item menyediakan sumber peristiwanya sendiri. Peristiwa ini ditampilkan di folder Hasil Sinkronisasi. Penyimpanan peristiwa hanya boleh menyertakan peristiwa untuk item. Untuk menyertakan peristiwa untuk semua item handler, Sync Center memanggil GetObject.

Pusat Sinkronisasi hanya meminta objek ini jika bendera kemampuan SYNCMGR_ICM_EVENT_STORE diatur dalam masker yang diambil oleh GetCapabilities.

Item tidak diperlukan untuk menyediakan penyimpanan peristiwa. Penyimpanan peristiwa default yang disediakan oleh Sync Center dapat digunakan jika memenuhi persyaratan item.

SYNCMGR_OBJECTID_Icon

Objek ekstraksi ikon yang mengimplementasikan antarmuka IExtractIcon yang digunakan untuk menampilkan ikon untuk item. Objek ini hanya boleh disediakan jika item mendapatkan ikonnya secara dinamis pada durasi. Mekanisme yang disukai untuk menyediakan ikon adalah mendaftarkan ikon sebagai DefaultIcon di registri.

Pusat Sinkronisasi hanya meminta objek ini jika bendera kemampuan SYNCMGR_ICM_PROVIDES_ICON diatur dalam masker yang diambil oleh GetCapabilities.

SYNCMGR_OBJECTID_QueryBeforeDelete

Objek yang mengimplementasikan antarmuka ISyncMgrUIOperation yang menampilkan UI saat pengguna memilih item di folder handler lalu memilih tugas Hapus . Sebelum meminta objek ini, Sync Center membuat utas terpisah untuk operasi ini dan instans baru item.

Pusat Sinkronisasi hanya meminta objek ini jika bendera kemampuan SYNCMGR_ICM_CAN_DELETE dan SYNCMGR_ICM_QUERY_BEFORE_DELETE diatur dalam masker yang diambil oleh GetCapabilities.

SYNCMGR_OBJECTID_QueryBeforeEnable

Objek yang mengimplementasikan antarmuka ISyncMgrUIOperation yang menampilkan UI saat pengguna memilih item di folder Pusat Sinkronisasi lalu memilih tugas Aktifkan . Sebelum meminta objek ini, Sync Center membuat utas terpisah untuk operasi ini dan instans baru item.

Pusat Sinkronisasi hanya meminta objek ini jika bendera kemampuan SYNCMGR_ICM_QUERY_BEFORE_ENABLE diatur dan bendera kebijakan SYNCMGR_IPM_PREVENT_ENABLE tidak.

SYNCMGR_OBJECTID_QueryBeforeDisable

Objek yang mengimplementasikan antarmuka ISyncMgrUIOperation yang menampilkan UI saat pengguna memilih item di folder handler lalu memilih tugas Nonaktifkan . Sebelum meminta objek ini, Sync Center membuat utas terpisah untuk operasi ini dan instans baru item.

Pusat Sinkronisasi hanya meminta objek ini jika bendera kemampuan SYNCMGR_ICM_QUERY_BEFORE_DELETE diatur dan bendera kebijakan SYNCMGR_IPM_PREVENT_DISABLE tidak.

[in] riid

Jenis: REFIID

IID antarmuka yang diminta. Ini tergantung pada jenis objek bernama dalam rguidObjectID.

[out] ppv

Jenis: batal**

Ketika metode ini kembali, berisi alamat penunjuk ke antarmuka yang diminta.

Nilai kembali

Jenis: HRESULT

Mengembalikan S_OK jika berhasil, atau nilai kesalahan sebaliknya. Mengembalikan E_INVALIDARG jika item tidak mendukung jenis objek yang diminta.

Keterangan

Item dapat mengimplementasikan antarmuka yang diminta pada handler-nya atau dapat mengimplementasikannya pada objek yang berbeda.

Contoh

Contoh berikut menunjukkan implementasi metode ini.

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

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2008 [hanya aplikasi desktop]
Target Platform Windows
Header syncmgr.h