Bagikan melalui


struktur NSPV2_ROUTINE (ws2spi.h)

Struktur NSPV2_ROUTINE berisi informasi tentang fungsi yang diterapkan oleh penyedia layanan namespace layanan versi-2 (NSPv2).

Catatan Struktur file header Ws2spi.h berisi prototipe lengkap untuk semua penunjuk fungsi NSPV2.

 

Sintaks

typedef struct _NSPV2_ROUTINE {
  DWORD                       cbSize;
  DWORD                       dwMajorVersion;
  DWORD                       dwMinorVersion;
  LPNSPV2STARTUP              NSPv2Startup;
  LPNSPV2CLEANUP              NSPv2Cleanup;
  LPNSPV2LOOKUPSERVICEBEGIN   NSPv2LookupServiceBegin;
  LPNSPV2LOOKUPSERVICENEXTEX  NSPv2LookupServiceNextEx;
  LPNSPV2LOOKUPSERVICEEND     NSPv2LookupServiceEnd;
  LPNSPV2SETSERVICEEX         NSPv2SetServiceEx;
  LPNSPV2CLIENTSESSIONRUNDOWN NSPv2ClientSessionRundown;
} NSPV2_ROUTINE, *PNSPV2_ROUTINE, *LPNSPV2_ROUTINE;

Anggota

cbSize

Jenis: DWORD

Ukuran struktur dalam byte.

dwMajorVersion

Jenis: DWORD

Versi utama spesifikasi penyedia layanan yang didukung oleh penyedia ini.

dwMinorVersion

Jenis: DWORD

Versi minor spesifikasi penyedia layanan yang didukung oleh penyedia ini.

NSPv2Startup

Jenis: ** LPNSPV2STARTUP**

Penunjuk ke fungsi NSPv2Startup untuk penyedia NSPv2 ini.

NSPv2Cleanup

Jenis: LPNSPV2CLEANUP

Penunjuk ke fungsi NSPv2Cleanup untuk penyedia NSPv2 ini.

NSPv2LookupServiceBegin

Jenis: LPNSPV2LOOKUPSERVICEBEGIN

Penunjuk ke fungsi NSPv2LookupServiceBegin untuk penyedia NSPv2 ini.

NSPv2LookupServiceNextEx

Jenis: LPNSPV2LOOKUPSERVICENEXTEX

Penunjuk ke fungsi NSPv2LookupServiceNextEx untuk penyedia NSPv2 ini.

NSPv2LookupServiceEnd

Jenis: LPNSPV2LOOKUPSERVICEEND

Penunjuk ke fungsi NSPv2LookupServiceEnd untuk penyedia NSPv2 ini.

NSPv2SetServiceEx

Jenis: LPNSPV2SETSERVICEEX

Penunjuk ke fungsi NSPv2SetServiceEx untuk penyedia NSPv2 ini.

NSPv2ClientSessionRundown

Jenis: LPNSPV2CLIENTSESSIONRUNDOWN

Penunjuk ke fungsi NSPv2ClientSessionRundown untuk penyedia NSPv2 ini.

Keterangan

Struktur NSPV2_ROUTINE digunakan sebagai bagian dari arsitektur penyedia layanan namespace layanan versi-2 (NSPv2) yang tersedia di Windows Vista dan yang lebih baru.

Pada Windows Vista dan Windows Server 2008, struktur NSPV2_ROUTINE hanya dapat digunakan untuk operasi pada penyedia namespace NS_EMAIL.

Fungsi WSAAdvertiseProvider mengiklankan instans penyedia NSPv2 untuk ditemukan klien. Pemanggil WSAAdvertiseProvider meneruskan penunjuk ke struktur NSPV2_ROUTINE dalam parameter pNSPv2Routine dengan titik entri NSPv2 yang didukung oleh penyedia.

Penyedia NSPv2 diperlukan untuk mengimplementasikan fungsi berikut:

NSPv2LookupServiceBegin

- NSPv2LookupServiceNextEx

- NSPv2LookupServiceEnd

Semua fungsi lain bersifat opsional, tergantung pada persyaratan penyedia NSPv2.

Jika fungsi tidak diimplementasikan, maka panggilan ke fungsi tersebut harus disadap oleh fungsi stub yang mengembalikan WSAEOPNOTSUPP. Penunjuk fungsi NSPv2 ke fungsi unimplemented dalam struktur NSPV2_ROUTINE harus menunjuk ke fungsi stub.

Secara umum, penyedia NSPv2 diimplementasikan dalam proses selain aplikasi panggilan. Penyedia NSPv2 tidak diaktifkan sebagai akibat dari aktivitas klien. Setiap aplikasi hosting penyedia memutuskan kapan harus membuat penyedia tertentu tersedia atau tidak tersedia dengan memanggil fungsi WSAAdvertiseProvider dan WSAUnadvertiseProvider . Aktivitas klien hanya menghasilkan upaya untuk menghubungi penyedia, jika tersedia (saat penyedia namespace diiklankan).

Proses dapat menerapkan dan mengiklankan beberapa penyedia secara bersamaan. Windows Sockets akan mengelola penyedia namespace layanan dengan mengirimkan panggilan ke yang benar. Ini juga akan menyembunyikan detail antarmuka RPC dan menerjemahkan panggilan lintas proses ke dalam panggilan dalam proses. Sehingga penyedia NSPv2 hanya harus menerapkan tabel fungsi titik masuk yang mirip dengan struktur NSP_ROUTINE yang digunakan oleh penyedia NSPv1. Penyedia NSPv2 tidak perlu khawatir tentang persyaratan khusus RPC (data marshalling dan serialisasi, misalnya).

Fungsi WSAUnadvertiseProvider membuat penyedia namespace layanan tertentu tidak lagi tersedia untuk klien.

Persyaratan

Persyaratan Nilai
Klien minimum yang didukung Windows Vista [hanya aplikasi desktop]
Server minimum yang didukung Windows Server 2008 [hanya aplikasi desktop]
Header ws2spi.h

Lihat juga

NSP_ROUTINE

NSPv2Cleanup

NSPv2ClientSessionRundown

NSPv2LookupServiceBegin

NSPv2LookupServiceEnd

NSPv2LookupServiceNextEx

NSPv2SetServiceEx

NSPv2Startup

WSAAdvertiseProvider

WSAProviderCompleteAsyncCall

WSAQUERYSET2

WSAUnadvertiseProvider