Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Fungsi RpcEpRegisterNoReplace menambahkan informasi alamat server ke database peta titik akhir lokal.
Sintaks
RPC_STATUS RpcEpRegisterNoReplace(
RPC_IF_HANDLE IfSpec,
RPC_BINDING_VECTOR *BindingVector,
UUID_VECTOR *UuidVector,
RPC_CSTR Annotation
);
Parameter
IfSpec
Antarmuka untuk mendaftar dengan database peta titik akhir lokal.
BindingVector
Penunjuk ke vektor handel pengikatan di mana server dapat menerima panggilan prosedur jarak jauh.
UuidVector
Arahkan ke vektor UUID objek yang ditawarkan oleh server. Aplikasi server membangun vektor ini.
Nilai parameter null menunjukkan tidak ada UUID objek untuk didaftarkan.
Annotation
Penunjuk ke komentar string karakter yang diterapkan ke setiap elemen lintas produk yang ditambahkan ke database peta titik akhir lokal. Panjang string dapat mencapai 64 karakter, termasuk karakter null-terminating. Tentukan nilai null atau string null-terminated ("\0") jika tidak ada string anotasi.
String anotasi hanya digunakan oleh aplikasi untuk informasi. RPC tidak menggunakan string ini untuk menentukan instans server mana yang berkomunikasi dengan klien atau untuk menghitung elemen dalam database peta titik akhir.
Mengembalikan nilai
Nilai | Makna |
---|---|
|
Panggilan berhasil. |
|
Tidak ada pengikatan. |
|
Handel pengikatan tidak valid. |
|
Ini adalah jenis pengikatan yang salah untuk operasi. |
Keterangan
Fungsi RpcEpRegisterNoReplace menambahkan entri ke database peta titik akhir host lokal. Fungsi ini tidak menggantikan entri database yang ada.
Server menggunakan RpcEpRegisterNoReplace daripada RpcEpRegister ketika beberapa instans server akan berjalan pada host yang sama. Dengan kata lain, gunakan fungsi ini ketika lebih dari satu instans server akan menawarkan antarmuka UUID, UUID objek, dan urutan protokol yang sama kapan saja.
Karena entri tidak diganti saat memanggil RpcEpRegisterNoReplace, server harus membatalkan pendaftaran sendiri sebelum berhenti berjalan. Jika tidak, data basi terakumulasi setiap kali instans server berhenti berjalan tanpa memanggil RpcEpUnregister. Entri kedaluarsa meningkatkan kemungkinan klien akan menerima titik akhir ke server yang tidak ada. Klien akan menghabiskan waktu untuk mencoba berkomunikasi dengan server yang tidak ada sebelum mendapatkan titik akhir lain.
Server dapat menggunakan RpcEpRegister dan RpcEpRegisterNoReplace untuk mendaftarkan entri dalam database pemeta titik akhir. Sebelumnya ke Windows 2000, dua fungsi tersedia untuk memungkinkan server menimpa entri kedaluarsa dalam database pemeta titik akhir yang tersisa dari instans server sebelumnya yang tidak lagi berjalan. Database pemeta titik akhir secara otomatis menghapus entri yang didaftarkan oleh instans server segera setelah server berhenti berfungsi. Namun, server tidak diizinkan untuk mengganti entri pemeta titik akhir server lain untuk tujuan keamanan. Oleh karena itu, RpcEpRegister dan RpcEpRegisterNoReplace melakukan sebagian besar fungsionalitas yang sama.
Aplikasi server memanggil RpcEpRegister untuk mendaftarkan titik akhir yang ditentukan dengan memanggil salah satu fungsi berikut:
- RpcServerUseAllProtseqs
- RpcServerUseProtseq
- RpcServerUseProtseqEp
- RpcServerUseAllProtseqsIf
- RpcServerUseProtseqIf
Jika urutan protokol digunakan tanpa menentukan titik akhir, pustaka run-time RPC secara otomatis menghasilkan titik akhir dinamis. Dalam hal ini, server dapat memanggil RpcServerInqBindings diikuti oleh RpcEpRegisterNoReplace untuk membuat dirinya tersedia untuk beberapa klien. Jika tidak, server yang dimulai secara otomatis hanya diketahui oleh klien tempat server dimulai.
Setiap elemen yang ditambahkan ke database peta titik akhir secara logis berisi hal berikut:
- Antarmuka UUID
- Versi antarmuka (mayor dan minor)
- Handel pengikatan
- UUID Objek (opsional)
- Anotasi (opsional)
Persyaratan
Persyaratan | Nilai |
---|---|
Klien minimum yang didukung | Windows 2000 Professional [hanya aplikasi desktop] |
Server minimum yang didukung | Windows 2000 Server [hanya aplikasi desktop] |
Target Platform | Windows |
Header | rpcdce.h (termasuk Rpc.h) |
Pustaka | Rpcrt4.lib |
DLL | Rpcrt4.dll |