다음을 통해 공유


ISyncMgrSyncCallback::ReportEvent 메서드(syncmgr.h)

동기화되는 항목에 대해 동기화 결과 폴더에 추가할 이벤트를 제공합니다.

구문

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

매개 변수

[in] pszItemID

형식: LPCWSTR

현재 동기화 중인 항목의 고유 ID를 포함하는 버퍼에 대한 포인터입니다. 이 문자열은 종료 null 문자를 포함하여 MAX_SYNCMGR_ID 최대 길이입니다.

[in] nLevel

형식: SYNCMGR_EVENT_LEVEL

관련된 이벤트의 형식을 선언하는 SYNCMGR_EVENT_LEVEL 열거형의 값입니다.

[in] nFlags

형식: SYNCMGR_EVENT_FLAGS

사용되지 않습니다.

[in] pszName

형식: LPCWSTR

이벤트의 이름을 포함하는 버퍼에 대한 포인터입니다.

[in] pszDescription

형식: LPCWSTR

이벤트에 대한 설명을 포함하는 버퍼에 대한 포인터입니다.

[in] pszLinkText

형식: LPCWSTR

항목에 대한 하이퍼링크에서 사용할 텍스트가 포함된 버퍼에 대한 포인터입니다. 이 매개 변수는 NULL일 수 있습니다.

[in] pszLinkReference

형식: LPCWSTR

항목의 URL을 포함하는 버퍼에 대한 포인터입니다. 이 매개 변수는 NULL일 수 있습니다.

[in] pszContext

형식: LPCWSTR

이벤트와 연결할 처리기별 데이터입니다.

[out] pguidEventID

형식: GUID*

이 메서드가 반환되면 이벤트에 대한 고유 ID에 대한 포인터가 포함됩니다.

반환 값

형식: HRESULT

메서드가 성공하면 S_OK를 반환하고, 그러지 않으면 HRESULT 오류 코드를 반환합니다.

설명

처리기가 동기화 결과에 대한 자세한 정보를 사용자에게 제공하려면 처리기에서 보고한 개별 동기화 결과에 대한 속성 시트를 확장할 수 있습니다.

이 메서드는 LogError를 대체합니다.

이벤트는 메모리에만 저장되므로 사용자가 로그오프하거나 종료할 때 모든 이벤트가 지워집니다. 이는 사용자 지정 ISyncMgrEventStore를 구현하는 이유 중 하나로, 파일을 포함하여 네트워크 또는 레지스트리를 비롯한 어디에서나 이벤트를 제공할 수 있습니다. 그러나 동기화 결과 폴더는 내부 이벤트 저장소와 동기화 처리기에서 제공하는 사용자 지정 이벤트 저장소에서 제공하는 이벤트를 표시합니다.

예제

다음 예제에서는 Synchronize 메서드에서 ISyncMgrSyncCallback::ReportProgress를 사용하는 방법을 보여 줍니다.

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

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows Vista [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 syncmgr.h