DsReplicaSyncAllA 함수(ntdsapi.h)
DsReplicaSyncAll 함수는 필요에 따라 전이적 복제를 사용하여 서버를 다른 모든 서버와 동기화합니다. 기본적으로 DsReplicaSyncAll은 해당 사이트의 다른 모든 서버와 서버를 동기화합니다. 그러나 사이트 경계를 넘어 동기화하는 데 사용할 수도 있습니다.
구문
NTDSAPI DWORD DsReplicaSyncAllA(
[in] HANDLE hDS,
[in] LPCSTR pszNameContext,
[in] ULONG ulFlags,
[in] BOOL(* )(LPVOID,PDS_REPSYNCALL_UPDATEA) pFnCallBack,
[in, optional] LPVOID pCallbackData,
[out, optional] PDS_REPSYNCALL_ERRINFOA **pErrors
);
매개 변수
[in] hDS
DSBind 또는 DSBindWithCred 함수에서 가져온 디렉터리 서비스 핸들을 포함합니다.
[in] pszNameContext
동기화할 명명 컨텍스트의 고유 이름을 지정하는 null로 끝나는 문자열에 대한 포인터입니다. pszNameContext 매개 변수는 선택 사항입니다. 해당 값이 NULL이면 구성 명명 컨텍스트가 복제됩니다.
[in] ulFlags
요청을 처리하는 데 사용되는 추가 데이터를 전달합니다. 이 매개 변수는 다음 값의 조합일 수 있습니다.
DS_REPSYNCALL_ABORT_IF_SERVER_UNAVAILABLE
서버에 연결할 수 없거나 연결이 끊어지거나 토폴로지 손상으로 인해 서버에 연결할 수 없는 경우 심각한 오류를 생성합니다.
DS_REPSYNCALL_CROSS_SITE_BOUNDARIES
사이트 경계를 넘어 동기화합니다. 기본적으로 DsReplicaSyncAll은 홈 시스템과 동일한 사이트의 DC와만 동기화하려고 시도합니다. 엔터프라이즈 포리스트의 모든 DC와 동기화를 시도하려면 이 플래그를 설정합니다. 그러나 DC는 동기(RPC) 전송으로 연결된 경우에만 동기화할 수 있습니다.
DS_REPSYNCALL_DO_NOT_SYNC
모든 동기화를 수행하지 않도록 설정합니다. 토폴로지는 여전히 분석되며 사용할 수 없거나 연결할 수 없는 서버는 여전히 식별됩니다.
DS_REPSYNCALL_ID_SERVERS_BY_DN
치명적이 아닌 오류가 발생할 경우 는 GUID DNS 이름 대신 서버 고유 이름(DN)을 반환합니다.
DS_REPSYNCALL_NO_OPTIONS
이 옵션은 적용되지 않습니다.
DS_REPSYNCALL_PUSH_CHANGES_OUTWARD
전이적 복제를 사용하여 홈 서버의 변경 사항을 모든 파트너에 적용합니다. 이렇게 하면 복제 방향과 복제 집합의 실행 순서가 일반적인 "끌어와기" 실행 모드에서 반전됩니다.
DS_REPSYNCALL_SKIP_INITIAL_CHECK
모든 서버가 응답하는 것으로 가정합니다. 이렇게 하면 DsReplicaSyncAll 함수의 작동 속도가 빨라지지만 일부 서버가 응답하지 않으면 일부 전이적 복제가 차단될 수 있습니다.
DS_REPSYNCALL_SYNC_ADJACENT_SERVERS_ONLY
전이적 복제를 수행하지 않도록 설정합니다. 인접 서버와만 동기화를 수행합니다.
[in] pFnCallBack
DsReplicaSyncAll 함수에서 호출하는 애플리케이션 정의 SyncUpdateProc 함수에 대한 포인터로 오류가 발생하면 두 서버의 동기화를 시작하거나, 두 서버의 동기화를 완료하거나, 사이트의 모든 서버 동기화를 완료합니다.
[in, optional] pCallbackData
pFnCallBack 매개 변수가 가리키는 SyncUpdateProc 콜백 함수의 첫 번째 인수로 전달된 애플리케이션 정의 데이터에 대한 포인터입니다.
[out, optional] pErrors
NULL로 끝나는 포인터 배열
동기화 중에 발생한 오류가 포함된 구조체를 DS_REPSYNCALL_ERRINFO. 포인터 배열과 MsCS\mscs\clusctl_resource_type_get_private_property_fmts.xml 데이터를 모두 보유하는 데 사용되는 메모리는 단일 메모리 블록으로 할당되며 인수로 사용되는 pErrors에 반환된 포인터 값을 사용하여 LocalFree에 대한 단일 호출에서 더 이상 필요하지 않은 경우 해제되어야 합니다.
반환 값
함수가 성공하면 반환 값이 ERROR_SUCCESS.
함수가 실패하면 반환 값은 다음과 같습니다.
설명
DsReplicaSyncAll 함수는 동기화할 토폴로지를 생성하기 전에 모든 서버에 바인딩하려고 시도합니다. 서버에 연결할 수 없는 경우 함수는 해당 서버를 토폴로지에서 제외하고 해결을 시도합니다. ulFlags에서 DS_REPSYNCALL_SKIP_INITIAL_CHECK 플래그를 설정하면 초기 바인딩이 무시됩니다.
서버에 연결할 수 없는 경우 DsReplicaSyncAll 함수는 ulFlags에서 DS_REPSYNCALL_ABORT_IF_SERVER_UNAVAILABLE 설정되지 않는 한 서버를 라우팅하고 가능한 한 많은 서버에서 복제하려고 시도합니다.
DsReplicaSyncAll 함수는 pFnCallBack이 가리키는 콜백 함수를 사용하여 최종 사용자에게 복제의 현재 상태 대한 정보를 유지할 수 있습니다. DsReplicaSyncAll 함수의 실행은 pFnCallBack이 가리키는 함수를 호출할 때 일시 중지됩니다. 콜백 함수의 반환 값이 TRUE이면 복제가 계속됩니다. 그렇지 않으면 DsReplicaSyncAll 함수가 복제를 종료합니다.
참고
ntdsapi.h 헤더는 DsReplicaSyncAll을 유니코드 전처리기 상수의 정의에 따라 이 함수의 ANSI 또는 유니코드 버전을 자동으로 선택하는 별칭으로 정의합니다. 인코딩 중립 별칭을 인코딩 중립이 아닌 코드와 혼합하면 컴파일 또는 런타임 오류가 발생하는 불일치가 발생할 수 있습니다. 자세한 내용은 함수 프로토타입에 대한 규칙을 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows Vista |
지원되는 최소 서버 | Windows Server 2008 |
대상 플랫폼 | Windows |
헤더 | ntdsapi.h |
라이브러리 | Ntdsapi.lib |
DLL | Ntdsapi.dll |
추가 정보
피드백
https://aka.ms/ContentUserFeedback
출시 예정: 2024년 내내 콘텐츠에 대한 피드백 메커니즘으로 GitHub 문제를 단계적으로 폐지하고 이를 새로운 피드백 시스템으로 바꿀 예정입니다. 자세한 내용은 다음을 참조하세요.다음에 대한 사용자 의견 제출 및 보기