IChangeApplicationServices::GetChangeApplicationContext
적용할 현재 변경 내용을 나타내는 개체를 가져옵니다.
HRESULT GetChangeApplicationContext(
ISyncChange * pSourceChange,
ISyncChange * pDestinationVersion,
IChangeApplicationContext ** ppContext);
매개 변수
- pSourceChange
[in, unique] 원본 공급자로부터 받은 변경 내용입니다. 이 값은 일괄 변경 내용이 복구 동기화의 일부인 경우 NULL일 수 있습니다.
- pDestinationVersion
[in, unique] 대상 복제본에서 pSourceChange의 버전입니다. 이 값은 대상 복제본에 pSourceChange의 버전이 없는 경우 NULL일 수 있습니다.
- ppContext
[out] 변경 내용을 처리하는 데 사용할 수 있는 개체를 반환합니다.
반환 값
S_OK
E_OUTOFMEMORY
E_POINTER
IChangeApplicationContext 개체가 이미 활성화되어 있으면 SYNC_E_ACTIVE_CHANGE_APPLICATION_CONTEXT입니다. 다른 변경 내용을 처리하려면 IChangeApplicationContext::GetChangeApplicationAction 메서드에서 CAA_FINISHED를 반환할 때까지 활성 IChangeApplicationContext 개체를 처리해야 합니다.
pSourceChange에 기본 정보가 포함되어 있지 않으면 SYNC_E_CHANGE_NEEDS_KNOWLEDGE입니다.
pSourceChange의 업데이트 버전 또는 생성 버전이 기본 정보에 포함되어 있지 않으면 SYNC_E_CHANGE_NOT_IN_KNOWLEDGE입니다.
pSourceChange와 pDestinationVersion에 포함된 변경 단위의 수가 다르면 SYNC_E_CHANGE_UNIT_COUNT_MISMATCH입니다.
지정된 ID의 형식이 이 개체가 초기화될 때 지정된 ID 형식 스키마와 일치하지 않으면 SYNC_E_ID_FORMAT_MISMATCH입니다.
변경 내용 일괄 처리를 위한 변경 내용 적용이 시작되지 않았거나 pSourceChange가 이미 성공적으로 적용된 것으로 보고되었으면 SYNC_E_INVALID_OPERATION입니다.
pSourceChange 또는 pDestinationVersion에만 변경 단위가 포함되어 있으면 SYNC_E_ITEM_HAS_CHANGE_UNITS입니다.
pSourceChange와 pDestinationVersion이 참조하는 항목 ID가 다르면 SYNC_E_NOT_EXPECTED_CHANGE입니다.
주의
일반적으로 이 메서드는 원본 공급자가 보내는 각 변경 내용에 대해 한 번씩 대상 공급자가 호출합니다. 반환되는 IChangeApplicationContext 개체를 사용하면 충돌을 검색하여 해결하고 대상 공급자가 pSourceChange에 지정된 변경 내용을 적용하는 방식을 결정할 수 있습니다.