Bagikan melalui


Metode ISyncMgrSyncCallback::ReportEvent (syncmgr.h)

Menyediakan peristiwa untuk ditambahkan ke folder Hasil Sinkronisasi untuk item yang sedang disinkronkan.

Sintaks

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

Parameter

[in] pszItemID

Jenis: LPCWSTR

Penunjuk ke buffer yang berisi ID unik item yang saat ini sedang disinkronkan. String ini memiliki panjang maksimum MAX_SYNCMGR_ID termasuk karakter null yang mengakhiri.

[in] nLevel

Jenis: SYNCMGR_EVENT_LEVEL

Nilai dari enumerasi SYNCMGR_EVENT_LEVEL yang menyatakan jenis peristiwa yang terlibat.

[in] nFlags

Jenis: SYNCMGR_EVENT_FLAGS

Tidak digunakan.

[in] pszName

Jenis: LPCWSTR

Penunjuk ke buffer yang berisi nama peristiwa.

[in] pszDescription

Jenis: LPCWSTR

Penunjuk ke buffer yang berisi deskripsi peristiwa.

[in] pszLinkText

Jenis: LPCWSTR

Penunjuk ke buffer yang berisi teks yang akan digunakan dalam hyperlink ke item. Parameter ini bisa NULL

[in] pszLinkReference

Jenis: LPCWSTR

Penunjuk ke buffer yang berisi URL item. Parameter ini bisa NULL

[in] pszContext

Jenis: LPCWSTR

Data khusus handler untuk dikaitkan dengan peristiwa.

[out] pguidEventID

Jenis: GUID*

Saat metode ini kembali, berisi penunjuk ke ID unik untuk peristiwa tersebut.

Nilai kembali

Jenis: HRESULT

Jika metode ini berhasil, metode ini mengembalikan S_OK. Jika tidak, kode kesalahan HRESULT akan dikembalikan.

Keterangan

Agar handler memberikan detail selengkapnya kepada pengguna tentang hasil sinkronisasi, lembar properti untuk hasil sinkronisasi individual yang dilaporkan oleh handler dapat diperluas.

Metode ini menggantikan LogError.

Peristiwa hanya disimpan dalam memori, sehingga semua peristiwa dibersihkan saat pengguna keluar atau dimatikan. Ini adalah salah satu alasan untuk menerapkan ISyncMgrEventStore kustom, yang dapat menyediakan peristiwanya dari mana saja, termasuk file, melalui jaringan, atau registri. Namun, folder hasil sinkronisasi menunjukkan peristiwa yang disediakan baik oleh penyimpanan peristiwa internal maupun oleh penyimpanan peristiwa kustom yang disediakan oleh penangan sinkronisasi.

Contoh

Contoh berikut menunjukkan penggunaan ISyncMgrSyncCallback::ReportProgress dengan metode Sinkronkan .

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

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