Bagikan melalui


Fungsi DsReplicaSyncAllA (ntdsapi.h)

Fungsi DsReplicaSyncAll menyinkronkan server dengan semua server lain, menggunakan replikasi transitif, seperlunya. Secara default, DsReplicaSyncAll menyinkronkan server dengan semua server lain di situsnya; namun, Anda juga dapat menggunakannya untuk menyinkronkan di seluruh batas situs.

Sintaksis

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

Berisi handel layanan direktori yang diperoleh dari DSBind atau fungsi DSBindWithCred.

[in] pszNameContext

Penunjuk ke string yang dihentikan null yang menentukan nama khusus konteks penamaan untuk disinkronkan. Parameter pszNameContext bersifat opsional; jika nilainya NULL, konteks penamaan konfigurasi direplikasi.

[in] ulFlags

Meneruskan data tambahan yang digunakan untuk memproses permintaan. Parameter ini bisa menjadi kombinasi dari nilai berikut.

DS_REPSYNCALL_ABORT_IF_SERVER_UNAVAILABLE

Menghasilkan kesalahan fatal jika ada server yang tidak dapat dihubungi atau jika ada server yang tidak dapat dijangkau karena topologi terputus atau rusak.

DS_REPSYNCALL_CROSS_SITE_BOUNDARIES

Menyinkronkan di seluruh batas situs. Secara default, DsReplicaSyncAll mencoba menyinkronkan hanya dengan DC di situs yang sama dengan sistem beranda. Atur bendera ini untuk mencoba menyinkronkan dengan semua DC di forest perusahaan. Namun, DC hanya dapat disinkronkan jika disinkronkan oleh transportasi sinkron (RPC).

DS_REPSYNCALL_DO_NOT_SYNC

Menonaktifkan semua sinkronisasi. Topologi masih dianalisis, dan server yang tidak tersedia atau tidak dapat dijangkau masih diidentifikasi.

DS_REPSYNCALL_ID_SERVERS_BY_DN

Jika terjadi kesalahan non-fatal, mengembalikan nama khusus server (DN) alih-alih nama DNS GUID mereka.

DS_REPSYNCALL_NO_OPTIONS

Opsi ini tidak berpengaruh.

DS_REPSYNCALL_PUSH_CHANGES_OUTWARD

Mendorong perubahan dari server rumah ke semua mitra menggunakan replikasi transitif. Ini membalikkan arah replikasi, dan urutan eksekusi set replikasi dari mode eksekusi "menarik" biasa.

DS_REPSYNCALL_SKIP_INITIAL_CHECK

Mengasumsikan bahwa semua server merespons. Ini mempercepat operasi fungsi DsReplicaSyncAll, tetapi jika beberapa server tidak merespons, beberapa replikasi transitif mungkin diblokir.

DS_REPSYNCALL_SYNC_ADJACENT_SERVERS_ONLY

Menonaktifkan replikasi transitif. Sinkronisasi dilakukan hanya dengan server yang berdekatan.

[in] pFnCallBack

Penunjuk ke fungsi SyncUpdateProc yang ditentukan aplikasi yang dipanggil oleh fungsi DsReplicaSyncAll ketika mengalami kesalahan, memulai sinkronisasi dua server, menyelesaikan sinkronisasi dua server, atau menyelesaikan sinkronisasi semua server di situs.

[in, optional] pCallbackData

Penunjuk ke data yang ditentukan aplikasi diteruskan sebagai argumen pertama dari fungsi panggilan balik SyncUpdateProc yang ditunjukkan oleh parameter pFnCallBack .

[out, optional] pErrors

Array pointer yang dihentikan NULL ke
DS_REPSYNCALL_ERRINFO struktur yang berisi kesalahan yang terjadi selama sinkronisasi. Memori yang digunakan untuk menahan array pointer dan data\mscs\clusctl_resource_type_get_private_property_fmts.xml MsCS dialokasikan sebagai satu blok memori dan harus dibebaskan ketika tidak lagi diperlukan oleh satu panggilan untuk LocalFree dengan nilai pointer yang dikembalikan dalam pErrors digunakan sebagai argumen.

Mengembalikan nilai

Jika fungsi berhasil, nilai pengembalian ERROR_SUCCESS.

Jika fungsi gagal, nilai yang dikembalikan adalah sebagai berikut.

Komentar

Fungsi DsReplicaSyncAll mencoba mengikat ke semua server sebelum menghasilkan topologi untuk disinkronkan. Jika server tidak dapat dihubungi, fungsi mengecualikan server tersebut dari topologi dan mencoba mengatasinya. Mengatur bendera DS_REPSYNCALL_SKIP_INITIAL_CHECK di ulFlags melewati pengikatan awal.

Jika server tidak dapat dihubungi, fungsi DsReplicaSyncAll mencoba merutekan di sekitarnya dan mereplikasi dari server sebanyak mungkin, kecuali DS_REPSYNCALL_ABORT_IF_SERVER_UNAVAILABLE diatur dalam ulFlags.

Fungsi DsReplicaSyncAll dapat menggunakan fungsi panggilan balik yang ditujukkan oleh pFnCallBack untuk menjaga pengguna akhir mendapatkan informasi tentang status replikasi saat ini. Eksekusi fungsi DsReplicaSyncAll dijeda saat memanggil fungsi yang ditunjukkan oleh pFnCallBack. Jika nilai pengembalian dari fungsi panggilan balik TRUE, replikasi berlanjut; jika tidak, fungsi DsReplicaSyncAll mengakhiri replikasi.

Nota

Header ntdsapi.h mendefinisikan DsReplicaSyncAll sebagai alias yang secara otomatis memilih versi ANSI atau Unicode dari fungsi ini berdasarkan definisi konstanta praproscessor UNICODE. Mencampur penggunaan alias encoding-netral dengan kode yang tidak mengodekan-netral dapat menyebabkan ketidakcocokan yang mengakibatkan kesalahan kompilasi atau runtime. Untuk informasi selengkapnya, lihat Konvensi untuk Prototipe Fungsi.

Persyaratan

Syarat Nilai
klien minimum yang didukung Windows Vista
server minimum yang didukung Windows Server 2008
Platform Target Windows
Header ntdsapi.h
Pustaka Ntdsapi.lib
DLL Ntdsapi.dll

Lihat juga

DS_REPSYNCALL_ERRINFO

DS_REPSYNCALL_UPDATE

Fungsi Pengendali Domain dan Manajemen Replikasi

DsReplicaSync

SyncUpdateProc