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