Freigeben über


DsReplicaSyncAllA-Funktion (ntdsapi.h)

Die DsReplicaSyncAll-Funktion synchronisiert einen Server mit allen anderen Servern, wobei bei Bedarf die transitive Replikation verwendet wird. Standardmäßig synchronisiert DsReplicaSyncAll den Server mit allen anderen Servern an seinem Standort. Sie können es jedoch auch verwenden, um standortübergreifend zu synchronisieren.

Syntax

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
);

Parameter

[in] hDS

Enthält ein Verzeichnisdiensthandle, das von der FUNKTION DSBind oder DSBindWithCred abgerufen wurde.

[in] pszNameContext

Zeiger auf eine NULL-Zeichenfolge, die den distinguished Name des zu synchronisierenden Namenskontexts angibt. Der Parameter pszNameContext ist optional. wenn der Wert NULL ist, wird der Konfigurationsnamenskontext repliziert.

[in] ulFlags

Übergibt zusätzliche Daten, die zum Verarbeiten der Anforderung verwendet werden. Für diesen Parameter ist eine Kombination der folgenden Werte gültig.

DS_REPSYNCALL_ABORT_IF_SERVER_UNAVAILABLE

Generiert einen schwerwiegenden Fehler, wenn kein Server kontaktiert werden kann oder wenn ein Server aufgrund einer getrennten oder unterbrochenen Topologie nicht erreichbar ist.

DS_REPSYNCALL_CROSS_SITE_BOUNDARIES

Synchronisiert über Standortgrenzen hinweg. Standardmäßig versucht DsReplicaSyncAll , nur mit DCs am selben Standort wie das Homesystem zu synchronisieren. Legen Sie dieses Flag fest, um zu versuchen, mit allen DCs in der Unternehmensgesamtstruktur zu synchronisieren. Die DCs können jedoch nur synchronisiert werden, wenn sie durch einen synchronen RPC-Transport verbunden sind.

DS_REPSYNCALL_DO_NOT_SYNC

Deaktiviert die gesamte Synchronisierung. Die Topologie wird weiterhin analysiert, und nicht verfügbare oder nicht erreichbare Server werden weiterhin identifiziert.

DS_REPSYNCALL_ID_SERVERS_BY_DN

Im Falle eines nicht schwerwiegenden Fehlers gibt der Server distinguished Names (DN) anstelle der GUID-DNS-Namen zurück.

DS_REPSYNCALL_NO_OPTIONS

Diese Option hat keine Auswirkung.

DS_REPSYNCALL_PUSH_CHANGES_OUTWARD

Übermittelt Änderungen aus dem Homeserver an alle Partner unter Verwendung der transitiven Replikation. Dadurch werden die Richtung der Replikation und die Ausführungsreihenfolge der Replikationsgruppen vom üblichen "Pulling"-Ausführungsmodus umgekehrt.

DS_REPSYNCALL_SKIP_INITIAL_CHECK

Es wird davon ausgegangen, dass alle Server reagieren. Dies beschleunigt den Betrieb der DsReplicaSyncAll-Funktion , aber wenn einige Server nicht reagieren, werden einige transitive Replikationen möglicherweise blockiert.

DS_REPSYNCALL_SYNC_ADJACENT_SERVERS_ONLY

Deaktiviert die transitive Replikation. Die Synchronisierung wird nur mit den angrenzenden Servern ausgeführt.

[in] pFnCallBack

Zeiger auf eine anwendungsdefinierte SyncUpdateProc-Funktion , die von der DsReplicaSyncAll-Funktion aufgerufen wird, wenn ein Fehler auftritt, die Synchronisierung von zwei Servern initiiert, die Synchronisierung von zwei Servern abgeschlossen oder die Synchronisierung aller Server am Standort abgeschlossen wird.

[in, optional] pCallbackData

Zeiger auf anwendungsdefinierte Daten, die als erstes Argument der SyncUpdateProc-Rückruffunktion übergeben werden, auf die vom pFnCallBack-Parameter verwiesen wird.

[out, optional] pErrors

Ein NULL-beendetes Array von Zeigern auf
DS_REPSYNCALL_ERRINFO Strukturen, die Fehler enthalten, die während der Synchronisierung aufgetreten sind. Der Arbeitsspeicher, der zum Speichern des Arrays von Zeigern und der MsCS\mscs\clusctl_resource_type_get_private_property_fmts.xml Daten verwendet wird, wird als einzelner Speicherblock zugeordnet und sollte freigegeben werden, wenn kein einzelner Aufruf von LocalFree mehr erforderlich ist, wobei der In pErrors als Argument verwendete Zeigerwert zurückgegeben wird.

Rückgabewert

Wenn die Funktion erfolgreich ist, wird der Rückgabewert ERROR_SUCCESS.

Wenn die Funktion fehlschlägt, lautet der Rückgabewert wie folgt.

Hinweise

Die DsReplicaSyncAll-Funktion versucht, an alle Server zu binden, bevor eine Topologie für die Synchronisierung generiert wird. Wenn ein Server nicht kontaktiert werden kann, schließt die Funktion diesen Server aus der Topologie aus und versucht, ihn zu umgehen. Das Festlegen des DS_REPSYNCALL_SKIP_INITIAL_CHECK-Flags in ulFlags umgeht die anfängliche Bindung.

Wenn ein Server nicht kontaktiert werden kann, versucht die DsReplicaSyncAll-Funktion , ihn herumzuleiten und von so vielen Servern wie möglich zu replizieren, es sei denn, DS_REPSYNCALL_ABORT_IF_SERVER_UNAVAILABLE in ulFlags festgelegt ist.

Die DsReplicaSyncAll-Funktion kann die Rückruffunktion verwenden, auf die pFnCallBack verweist, um einen Endbenutzer über den aktuellen status der Replikation auf dem Laufenden zu halten. Die Ausführung der DsReplicaSyncAll-Funktion wird angehalten, wenn sie die Funktion aufruft, auf die von pFnCallBack verwiesen wird. Wenn der Rückgabewert der Rückruffunktion TRUE ist, wird die Replikation fortgesetzt. Andernfalls beendet die DsReplicaSyncAll-Funktion die Replikation.

Hinweis

Der ntdsapi.h-Header definiert DsReplicaSyncAll als Alias, der automatisch die ANSI- oder Unicode-Version dieser Funktion basierend auf der Definition der UNICODE-Präprozessorkonstante auswählt. Das Mischen der Verwendung des codierungsneutralen Alias mit nicht codierungsneutralem Code kann zu Nichtübereinstimmungen führen, die zu Kompilierungs- oder Laufzeitfehlern führen. Weitere Informationen finden Sie unter Konventionen für Funktionsprototypen.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista
Unterstützte Mindestversion (Server) Windows Server 2008
Zielplattform Windows
Kopfzeile ntdsapi.h
Bibliothek Ntdsapi.lib
DLL Ntdsapi.dll

Weitere Informationen

DS_REPSYNCALL_ERRINFO

DS_REPSYNCALL_UPDATE

Domänencontroller und Replikationsverwaltungsfunktionen

DsReplicaSync

SyncUpdateProc