Freigeben über


DsReplicaSyncAllA-Funktion (ntdsapi.h)

Die DsReplicaSyncAll-Funktion synchronisiert bei Bedarf einen Server mit allen anderen Servern, wobei die transitive Replikation verwendet wird. Standardmäßig synchronisiert DsReplicaSyncAll den Server mit allen anderen Servern an seinem Standort; Sie können sie jedoch auch verwenden, um sie über Standortgrenzen hinweg 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 entweder vom DSBind- oder DSBindWithCredWithCred-Funktion abgerufen wird.

[in] pszNameContext

Zeigen Sie auf eine mit Null beendete Zeichenfolge, die den distinguishierten Namen des zu synchronisierenden Namenskontexts angibt. Der pszNameContext Parameter ist optional; wenn der Wert NULL-ist, wird der Konfigurationsbenennungskontext repliziert.

[in] ulFlags

Übergibt zusätzliche Daten, die zum Verarbeiten der Anforderung verwendet werden. Dieser Parameter kann eine Kombination aus den folgenden Werten sein.

DS_REPSYNCALL_ABORT_IF_SERVER_UNAVAILABLE

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

DS_REPSYNCALL_CROSS_SITE_BOUNDARIES

Synchronisiert sich über Websitegrenzen hinweg. Standardmäßig versucht DsReplicaSyncAll, nur mit DCs an derselben Website wie das Heimsystem zu synchronisieren. Legen Sie dieses Kennzeichen fest, um zu versuchen, mit allen DCs in der Unternehmensstruktur zu synchronisieren. Die DCs können jedoch nur synchronisiert werden, wenn sie durch einen synchronen Transport (RPC) verbunden sind.

DS_REPSYNCALL_DO_NOT_SYNC

Deaktiviert alle Synchronisierungen. Die Topologie wird weiterhin analysiert, und nicht verfügbare oder nicht erreichbare Server werden weiterhin identifiziert.

DS_REPSYNCALL_ID_SERVERS_BY_DN

Gibt im Falle eines nicht schwerwiegenden Fehlers server distinguished names (DN) anstelle ihrer GUID-DNS-Namen zurück.

DS_REPSYNCALL_NO_OPTIONS

Diese Option hat keine Auswirkung.

DS_REPSYNCALL_PUSH_CHANGES_OUTWARD

Verschiebt Änderungen vom Heimserver an alle Partner, die transitive Replikation verwenden. Dadurch wird die Richtung der Replikation und die Reihenfolge der Ausführung der Replikationssätze aus dem üblichen "Pulling"-Modus der Ausführung umgekehrt.

DS_REPSYNCALL_SKIP_INITIAL_CHECK

Geht davon aus, 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 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 beendet wird.

[in, optional] pCallbackData

Zeiger auf anwendungsdefinierte Daten, die als erstes Argument der SyncUpdateProc- Rückruffunktion übergeben werden, auf die durch den 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 Speicher, der zum Speichern des Arrays von Zeigern und msCS-\mscs\clusctl_resource_type_get_private_property_fmts.xml Daten verwendet wird, wird als einzelner Speicherblock zugewiesen und sollte freigegeben werden, wenn ein einzelner Aufruf von LocalFree nicht mehr erforderlich ist, wobei der Zeigerwert in pErrors als Argument 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.

Bemerkungen

Die DsReplicaSyncAll--Funktion versucht, eine Bindung an alle Server zu erstellen, bevor eine Topologie zum Synchronisieren generiert wird. Wenn kein Server kontaktiert werden kann, schließt die Funktion diesen Server aus der Topologie aus und versucht, ihn zu umgehen. Wenn Sie das DS_REPSYNCALL_SKIP_INITIAL_CHECK Flag in ulFlags festlegen, wird die ursprüngliche Bindung umgangen.

Wenn kein Server kontaktiert werden kann, versucht die DsReplicaSyncAll--Funktion, sie umzuleiten und von so vielen Servern wie möglich zu replizieren, es sei denn, DS_REPSYNCALL_ABORT_IF_SERVER_UNAVAILABLE in ulFlagsfestgelegt 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 funktion DsReplicaSyncAll wird angehalten, wenn sie die Funktion aufruft, auf die durch pFnCallBackverwiesen wird. Wenn der Rückgabewert der Rückruffunktion TRUEist, wird die Replikation fortgesetzt; andernfalls beendet die DsReplicaSyncAll--Funktion die Replikation.

Anmerkung

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 Code, der nicht codierungsneutral ist, 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
mindestens unterstützte Client- Windows Vista
mindestens unterstützte Server- Windows Server 2008
Zielplattform- Fenster
Header- ntdsapi.h
Library Ntdsapi.lib
DLL- Ntdsapi.dll

Siehe auch

DS_REPSYNCALL_ERRINFO

DS_REPSYNCALL_UPDATE

Domänencontroller- und Replikationsverwaltungsfunktionen

DsReplicaSync-

SyncUpdateProc-