Função DsReplicaSyncAllA (ntdsapi.h)
A função DsReplicaSyncAll sincroniza um servidor com todos os outros servidores, usando replicação transitiva, conforme necessário. Por padrão, DsReplicaSyncAll sincroniza o servidor com todos os outros servidores em seu site; no entanto, você também pode usá-lo para sincronizar entre os limites do site.
Sintaxe
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
);
Parâmetros
[in] hDS
Contém um identificador de serviço de diretório obtido da função DSBind ou DSBindWithCred.
[in] pszNameContext
Ponteiro para uma cadeia de caracteres terminada em nulo que especifica o nome diferenciado do contexto de nomenclatura a ser sincronizado. O parâmetro pszNameContext é opcional; se seu valor for NULL, o contexto de nomenclatura de configuração será replicado.
[in] ulFlags
Passa dados adicionais usados para processar a solicitação. Esse parâmetro pode ser uma combinação dos valores a seguir.
DS_REPSYNCALL_ABORT_IF_SERVER_UNAVAILABLE
Gera um erro fatal se qualquer servidor não puder ser contatado ou se qualquer servidor estiver inacessível devido a uma topologia desconectada ou interrompida.
DS_REPSYNCALL_CROSS_SITE_BOUNDARIES
Sincroniza entre os limites do site. Por padrão, DsReplicaSyncAll tenta sincronizar apenas com os DCs no mesmo site que o sistema doméstico. Defina esse sinalizador para tentar sincronizar com todos os DCs na floresta empresarial. No entanto, os DCs só poderão ser sincronizados se conectados por um transporte Síncrono (RPC).
DS_REPSYNCALL_DO_NOT_SYNC
Desabilita toda a sincronização. A topologia ainda é analisada e servidores indisponíveis ou inacessíveis ainda são identificados.
DS_REPSYNCALL_ID_SERVERS_BY_DN
No caso de um erro não fatal, retorna nomes diferenciados do servidor (DN) em vez de seus nomes DNS GUID.
DS_REPSYNCALL_NO_OPTIONS
Essa opção não tem efeito.
DS_REPSYNCALL_PUSH_CHANGES_OUTWARD
Envia por push as alterações do servidor doméstico para todos os parceiros usando a replicação transitiva. Isso inverte a direção da replicação e a ordem de execução dos conjuntos de replicação do modo de execução "pull" usual.
DS_REPSYNCALL_SKIP_INITIAL_CHECK
Pressupõe que todos os servidores estejam respondendo. Isso acelera a operação da função DsReplicaSyncAll, mas se alguns servidores não estiverem respondendo, algumas replicações transitivas poderão ser bloqueadas.
DS_REPSYNCALL_SYNC_ADJACENT_SERVERS_ONLY
Desabilita a replicação transitiva. A sincronização é executada somente com servidores adjacentes.
[in] pFnCallBack
Ponteiro para uma função SyncUpdateProc definida pelo aplicativo chamada pela função DsReplicaSyncAll quando encontrar um erro, iniciar a sincronização de dois servidores, concluir a sincronização de dois servidores ou concluir a sincronização de todos os servidores no site.
[in, optional] pCallbackData
Ponteiro para dados definidos pelo aplicativo passados como o primeiro argumento da função de retorno de chamada SyncUpdateProc apontada pelo parâmetro pFnCallBack.
[out, optional] pErrors
Uma matriz de ponteiros terminada em NULL para
DS_REPSYNCALL_ERRINFO estruturas que contêm erros ocorridos durante a sincronização. A memória usada para manter a matriz de ponteiros e os dados de\mscs\clusctl_resource_type_get_private_property_fmts.xml mscs é alocada como um único bloco de memória e deve ser liberada quando não for mais necessária uma única chamada para LocalFree com o valor do ponteiro retornado em pErrors usado como argumento.
Valor de retorno
Se a função for bem-sucedida, o valor retornado será ERROR_SUCCESS.
Se a função falhar, o valor retornado será o seguinte.
Observações
A função DsReplicaSyncAll tenta associar a todos os servidores antes de gerar uma topologia da qual sincronizar. Se um servidor não puder ser contatado, a função excluirá esse servidor da topologia e tentará contorná-lo. Definir o sinalizador de DS_REPSYNCALL_SKIP_INITIAL_CHECK em ulFlags ignora a associação inicial.
Se um servidor não puder ser contatado, a função DsReplicaSyncAll tentará roteá-lo e replicar do maior número possível de servidores, a menos que DS_REPSYNCALL_ABORT_IF_SERVER_UNAVAILABLE seja definido em ulFlags.
A função DsReplicaSyncAll pode usar a função de retorno de chamada apontada por pFnCallBack para manter um usuário final informado sobre o status atual da replicação. A execução da função DsReplicaSyncAll pausa quando chama a função apontada por pFnCallBack. Se o valor retornado da função de retorno de chamada for VERDADEIRO, a replicação continuará; caso contrário, a função DsReplicaSyncAll termina a replicação.
Nota
O cabeçalho ntdsapi.h define DsReplicaSyncAll como um alias que seleciona automaticamente a versão ANSI ou Unicode dessa função com base na definição da constante do pré-processador UNICODE. A combinação do uso do alias neutro de codificação com código que não é neutro em codificação pode levar a incompatibilidades que resultam em erros de compilação ou de runtime. Para obter mais informações, consulte Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Windows Vista |
servidor com suporte mínimo | Windows Server 2008 |
da Plataforma de Destino |
Windows |
cabeçalho | ntdsapi.h |
biblioteca | Ntdsapi.lib |
de DLL |
Ntdsapi.dll |
Consulte também
Funções de gerenciamento de replicação e controlador de domínio