Partager via


DsReplicaSyncAllW, fonction (ntdsapi.h)

La fonction DsReplicaSyncAll synchronise un serveur avec tous les autres serveurs, à l’aide de la réplication transitive, si nécessaire. Par défaut, DsReplicaSyncAll synchronise le serveur avec tous les autres serveurs de son site ; Toutefois, vous pouvez également l’utiliser pour synchroniser entre les limites de site.

Syntaxe

NTDSAPI DWORD DsReplicaSyncAllW(
  [in]            HANDLE                                  hDS,
  [in]            LPCWSTR                                 pszNameContext,
  [in]            ULONG                                   ulFlags,
  [in]            BOOL(* )(LPVOID,PDS_REPSYNCALL_UPDATEW) pFnCallBack,
  [in, optional]  LPVOID                                  pCallbackData,
  [out, optional] PDS_REPSYNCALL_ERRINFOW                 **pErrors
);

Paramètres

[in] hDS

Contient un handle de service d’annuaire obtenu à partir de la fonction DSBind ou DSBindWithCred.

[in] pszNameContext

Pointeur vers une chaîne terminée par null qui spécifie le nom unique du contexte de nommage à synchroniser. Le paramètre pszNameContext est facultatif ; si sa valeur est NULL, le contexte d’affectation de noms de configuration est répliqué.

[in] ulFlags

Transmet des données supplémentaires utilisées pour traiter la requête. Ce paramètre peut être une combinaison des valeurs suivantes.

DS_REPSYNCALL_ABORT_IF_SERVER_UNAVAILABLE

Génère une erreur irrécupérable si un serveur ne peut pas être contacté ou si un serveur est inaccessible en raison d’une topologie déconnectée ou rompue.

DS_REPSYNCALL_CROSS_SITE_BOUNDARIES

Synchronise entre les limites de site. Par défaut, DsReplicaSyncAll tente de se synchroniser uniquement avec les contrôleurs de domaine du même site que le système d’accueil. Définissez cet indicateur pour tenter de synchroniser avec tous les contrôleurs de domaine de la forêt d’entreprise. Toutefois, les contrôleurs de domaine peuvent être synchronisés uniquement s’ils sont connectés par un transport synchrone (RPC).

DS_REPSYNCALL_DO_NOT_SYNC

Désactive toutes les synchronisations. La topologie est toujours analysée et les serveurs indisponibles ou inaccessibles sont toujours identifiés.

DS_REPSYNCALL_ID_SERVERS_BY_DN

En cas d’erreur non irrécupérable, retourne des noms uniques de serveur (DN) au lieu de leurs noms DNS GUID.

DS_REPSYNCALL_NO_OPTIONS

Cette option n’a aucun effet.

DS_REPSYNCALL_PUSH_CHANGES_OUTWARD

Envoie (push) les modifications du serveur d’accueil à tous les partenaires à l’aide de la réplication transitive. Cela inverse la direction de la réplication et l’ordre d’exécution des jeux de réplication à partir du mode d’exécution habituel « pulling ».

DS_REPSYNCALL_SKIP_INITIAL_CHECK

Suppose que tous les serveurs répondent. Cela accélère l’opération de la fonction DsReplicaSyncAll, mais si certains serveurs ne répondent pas, certaines réplications transitives peuvent être bloquées.

DS_REPSYNCALL_SYNC_ADJACENT_SERVERS_ONLY

Désactive la réplication transitive. La synchronisation est effectuée uniquement avec les serveurs adjacents.

[in] pFnCallBack

Pointeur vers une fonction SyncUpdatePro c définie par l’application appelée par la fonction DsReplicaSyncAll lorsqu’elle rencontre une erreur, lance la synchronisation de deux serveurs, termine la synchronisation de deux serveurs ou termine la synchronisation de tous les serveurs du site.

[in, optional] pCallbackData

Pointeur vers les données définies par l’application passées en tant que premier argument de la fonction de rappel SyncUpdateProc pointée par le paramètre pFnCallBack.

[out, optional] pErrors

Tableau de pointeurs à terminaison NULL vers
DS_REPSYNCALL_ERRINFO structures qui contiennent des erreurs qui se sont produites pendant la synchronisation. La mémoire utilisée pour contenir à la fois le tableau de pointeurs et les données msCS\mscs\clusctl_resource_type_get_private_property_fmts.xml est allouée en tant que bloc de mémoire unique et doit être libérée lorsqu’un seul appel n’est plus nécessaire pour LocalFree avec la valeur de pointeur retournée dans pErrors utilisé comme argument.

Valeur de retour

Si la fonction réussit, la valeur de retour est ERROR_SUCCESS.

Si la fonction échoue, la valeur de retour est la suivante.

Remarques

La fonction DsReplicaSyncAll tente de lier à tous les serveurs avant de générer une topologie à partir de laquelle effectuer la synchronisation. Si un serveur ne peut pas être contacté, la fonction exclut ce serveur de la topologie et tente de le contourner. La définition de l’indicateur DS_REPSYNCALL_SKIP_INITIAL_CHECK dans ulFlags contourne la liaison initiale.

Si un serveur ne peut pas être contacté, la fonction DsReplicaSyncAll tente de l’acheminer et de la répliquer à partir du plus grand nombre possible de serveurs, sauf si DS_REPSYNCALL_ABORT_IF_SERVER_UNAVAILABLE est définie dans ulFlags.

La fonction DsReplicaSyncAll peut utiliser la fonction de rappel pointée par pFnCallBack pour informer un utilisateur final de l’état actuel de la réplication. L’exécution de la fonction DsReplicaSyncAll s’interrompt lorsqu’elle appelle la fonction pointée par pFnCallBack. Si la valeur de retour de la fonction de rappel est TRUE, la réplication continue ; sinon, la fonction DsReplicaSyncAll met fin à la réplication.

Note

L’en-tête ntdsapi.h définit DsReplicaSyncAll comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. Le mélange de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Exigences

Exigence Valeur
client minimum pris en charge Windows Vista
serveur minimum pris en charge Windows Server 2008
plateforme cible Windows
d’en-tête ntdsapi.h
bibliothèque Ntdsapi.lib
DLL Ntdsapi.dll

Voir aussi

DS_REPSYNCALL_ERRINFO

DS_REPSYNCALL_UPDATE

fonctions de gestion du contrôleur de domaine et de la réplication

DsReplicaSync

SyncUpdateProc