Función DsReplicaSyncAllA (ntdsapi.h)
La función DsReplicaSyncAll sincroniza un servidor con todos los demás servidores, mediante la replicación transitiva, según sea necesario. De forma predeterminada, DsReplicaSyncAll sincroniza el servidor con todos los demás servidores de su sitio; sin embargo, también puede usarlo para sincronizarse a través de los límites del sitio.
Sintaxis
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
Contiene un identificador de servicio de directorio obtenido de la función de DSBind o DSBindWithCred.
[in] pszNameContext
Puntero a una cadena terminada en NULL que especifica el nombre distintivo del contexto de nomenclatura que se va a sincronizar. El parámetro pszNameContext es opcional; si su valor es NULL, se replica el contexto de nomenclatura de configuración.
[in] ulFlags
Pasa datos adicionales usados para procesar la solicitud. Este parámetro puede ser una combinación de los siguientes valores.
DS_REPSYNCALL_ABORT_IF_SERVER_UNAVAILABLE
Genera un error irrecuperable si no se puede ponerse en contacto con cualquier servidor o si algún servidor no es accesible debido a una topología desconectada o interrumpida.
DS_REPSYNCALL_CROSS_SITE_BOUNDARIES
Sincroniza a través de los límites del sitio. De forma predeterminada, DsReplicaSyncAll intenta sincronizarse solo con los controladores de dominio del mismo sitio que el sistema principal. Establezca esta marca para intentar sincronizar con todos los controladores de dominio del bosque empresarial. Sin embargo, los controladores de dominio solo se pueden sincronizar si están conectados mediante un transporte sincrónico (RPC).
DS_REPSYNCALL_DO_NOT_SYNC
Deshabilita toda la sincronización. La topología todavía se analiza y todavía se identifican los servidores no disponibles o inaccesibles.
DS_REPSYNCALL_ID_SERVERS_BY_DN
En caso de error no grave, devuelve nombres distintivos de servidor (DN) en lugar de sus nombres DNS GUID.
DS_REPSYNCALL_NO_OPTIONS
Esta opción no tiene ningún efecto.
DS_REPSYNCALL_PUSH_CHANGES_OUTWARD
Inserta los cambios del servidor principal en todos los asociados mediante la replicación transitiva. Esto invierte la dirección de la replicación y el orden de ejecución de los conjuntos de replicación desde el modo de ejecución "extracción" habitual.
DS_REPSYNCALL_SKIP_INITIAL_CHECK
Supone que todos los servidores responden. Esto acelera el funcionamiento de la función DsReplicaSyncAll, pero si algunos servidores no responden, es posible que se bloqueen algunas replicaciones transitivas.
DS_REPSYNCALL_SYNC_ADJACENT_SERVERS_ONLY
Deshabilita la replicación transitiva. La sincronización solo se realiza con servidores adyacentes.
[in] pFnCallBack
Puntero a una función de SyncUpdate Proc definida por la aplicación a la que llama la función DsReplicaSyncAll cuando se produce un error, inicia la sincronización de dos servidores, completa la sincronización de dos servidores o finaliza la sincronización de todos los servidores del sitio.
[in, optional] pCallbackData
Puntero a los datos definidos por la aplicación pasados como primer argumento de la función de devolución de llamada SyncUpdateProc
[out, optional] pErrors
Matriz terminada en NULL de punteros a
DS_REPSYNCALL_ERRINFO estructuras que contienen errores que se produjeron durante la sincronización. La memoria que se usa para contener la matriz de punteros y los datos de msCS\mscs\clusctl_resource_type_get_private_property_fmts.xml se asigna como un único bloque de memoria y se debe liberar cuando ya no lo requiera una sola llamada a LocalFree con el valor de puntero devuelto en pErrors usado como argumento.
Valor devuelto
Si la función se ejecuta correctamente, el valor devuelto es ERROR_SUCCESS.
Si se produce un error en la función, el valor devuelto es el siguiente.
Observaciones
La función DsReplicaSyncAll intenta enlazar a todos los servidores antes de generar una topología desde la que se va a sincronizar. Si no se puede ponerse en contacto con un servidor, la función excluye ese servidor de la topología e intenta solucionarlo. Al establecer la marca de DS_REPSYNCALL_SKIP_INITIAL_CHECK en ulFlags se omite el enlace inicial.
Si no se puede ponerse en contacto con un servidor, la función DsReplicaSyncAll intenta enrutarlo y replicar desde tantos servidores como sea posible, a menos que DS_REPSYNCALL_ABORT_IF_SERVER_UNAVAILABLE esté establecido en ulFlags.
La función DsReplicaSyncAll puede usar la función de devolución de llamada a la que apunta pFnCallBack para mantener informado al usuario final sobre el estado actual de la replicación. La ejecución de la función DsReplicaSyncAll se detiene cuando llama a la función a la que apunta pFnCallBack. Si el valor devuelto de la función de devolución de llamada es TRUE, la replicación continúa; De lo contrario, la función DsReplicaSyncAll finaliza la replicación.
Nota
El encabezado ntdsapi.h define DsReplicaSyncAll como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows Vista |
servidor mínimo admitido | Windows Server 2008 |
de la plataforma de destino de |
Windows |
encabezado de |
ntdsapi.h |
biblioteca de |
Ntdsapi.lib |
DLL de |
Ntdsapi.dll |
Consulte también
controlador de dominio y funciones de administración de replicación