다음을 통해 공유


IProviderSyncServices::CreateSyncKnowledge

지정된 복제본에 속하는 빈 ISyncKnowledge 개체를 만듭니다.

HRESULT CreateSyncKnowledge( 
  ULONGLONG ullCurrentTickCount,
  IReplicaKeyMap *pReplicaKeyMap,
  ISyncKnowledge **ppKnowledge);

매개 변수

  • pullCurrentTickCount
    [in] 새로 만든 정보 개체를 소유하는 복제본의 현재 틱 수입니다.
  • pReplicaKeyMap
    [in] 새로 만든 정보 개체에 포함될 복제본 키 맵입니다.
  • ppKnowledge
    [out] 새로 만든 정보 개체를 반환합니다.

반환 값

  • S_OK

  • E_OUTOFMEMORY

  • E_POINTER

  • 이 개체가 초기화되지 않았으면 SYNC_E_INVALID_OPERATION입니다.

예제

다음 예제에서는 IProviderSyncServices를 사용하여 몇 가지 개체를 만들고 나중에 사용하기 위해 저장합니다.

IProviderSyncServices* pProvSvc;
hr = GetProviderSyncServices(&c_idParams, &pProvSvc);
if (SUCCEEDED(hr))
{
    IReplicaKeyMap* pReplicaKeyMap = NULL;
    hr = pProvSvc->CreateReplicaKeyMap((BYTE*)&guidReplicaID, &pReplicaKeyMap);
    if (SUCCEEDED(hr))
    {
        hr = SetReplicaKeyMap(pReplicaKeyMap);
        if (SUCCEEDED(hr))
        {
            ISyncKnowledge* pKnowledge = NULL;
            hr = pProvSvc->CreateSyncKnowledge(0, pReplicaKeyMap, &pKnowledge);
            if (SUCCEEDED(hr))
            {
                hr = SetKnowledge(pKnowledge);
                if (SUCCEEDED(hr))
                {
                    IForgottenKnowledge* pForgottenKnowledge = NULL;
                    hr = pProvSvc->CreateForgottenKnowledge(pReplicaKeyMap, &pForgottenKnowledge);
                    if (SUCCEEDED(hr))
                    {
                        hr = SetForgottenKnowledge(pForgottenKnowledge);

                        pForgottenKnowledge->Release();
                    }
                }

                pKnowledge->Release();
            }
        }

        pReplicaKeyMap->Release();
    }
    pProvSvc->Release();
}

참고 항목

참조

IProviderSyncServices 인터페이스