Bagikan melalui


Fungsi panggilan balik LPNSPGETSERVICECLASSINFO (ws2spi.h)

Fungsi NSPGetServiceClassInfo mengambil semua informasi kelas (skema) yang berkaitan dengan penyedia namespace layanan. Panggilan ini mengambil informasi khusus namespace yang umum untuk semua instans layanan, termasuk informasi koneksi untuk SAP, atau informasi port untuk SAP atau TCP.

Sintaks

LPNSPGETSERVICECLASSINFO Lpnspgetserviceclassinfo;

INT Lpnspgetserviceclassinfo(
  [in]      LPGUID lpProviderId,
  [in, out] LPDWORD lpdwBufSize,
  [in, out] LPWSASERVICECLASSINFOW lpServiceClassInfo
)
{...}

Parameter

[in] lpProviderId

Penunjuk ke GUID penyedia namespace layanan tertentu tempat skema kelas layanan akan diambil.

[in, out] lpdwBufSize

Pada input, ukuran, dalam byte, dari buffer yang diacu oleh parameter lpServiceClassInfo .

Pada output, jika fungsi gagal dan kesalahannya adalah WSAEFAULT, parameter ini menentukan ukuran minimum, dalam byte, dari buffer yang ditunjukkan ke parameter lpServiceClassInfo yang diperlukan untuk mengambil rekaman.

[in, out] lpServiceClassInfo

Mengembalikan penunjuk ke struktur WSASERVICECLASSINFOW yang berisi kelas layanan ke informasi pemetaan khusus namespace. Parameter lpServiceClassId harus diisi untuk menunjukkan catatan WSASERVICECLASSINFOW mana yang harus dikembalikan.

Menampilkan nilai

Jika tidak ada kesalahan yang terjadi, fungsi NSPGetServiceClassInfo mengembalikan NO_ERROR (nol). Jika tidak, SOCKET_ERROR (–1) dikembalikan dan penyedia namespace harus mengatur kode kesalahan yang sesuai menggunakan WSASetLastError.

Kode kesalahan Makna
WSA_NOT_ENOUGH_MEMORY
Tidak tersedia cukup memori untuk melakukan operasi ini.
WSAEACCES
Rutinitas panggilan tidak memiliki hak istimewa yang memadai untuk mengakses informasi.
WSAEFAULT
Buffer yang ditujukkan oleh parameter lpServiceClass terlalu kecil untuk berisi struktur WSASERVICECLASSINFOW . Aplikasi perlu meneruskan buffer yang lebih besar.
WSAEINVAL
Pengidentifikasi kelas layanan atau pengidentifikasi penyedia namespace yang ditentukan tidak valid. Kesalahan ini dikembalikan jika parameter lpProviderId, lpServiceClassId, lpdwBufSize, atau lpServiceClassInfo adalah **NULL**.
WSAEOPNOTSUPP
Operasi ini tidak didukung. Kesalahan ini dikembalikan jika penyedia namespace tidak mengimplementasikan fungsi ini.
WSANO_DATA
Nama yang diminta valid, tetapi tidak ada data dari jenis yang diminta yang ditemukan.
WSATYPE_NOT_FOUND
Kelas yang ditentukan tidak ditemukan.

Keterangan

W2_32.dll menggunakan fungsi ini untuk mengimplementasikan fungsi WSAGetServiceClassNameByClassId , serta untuk mengambil informasi khusus namespace yang diteruskan ke fungsi NSPLookupServiceBegin dan NSPSetService .

Persyaratan

   
Klien minimum yang didukung Windows 2000 Professional [hanya aplikasi desktop]
Server minimum yang didukung Windows 2000 Server [hanya aplikasi desktop]
Target Platform Windows
Header ws2spi.h

Lihat juga

NSPInstallServiceClass

NSPLookupServiceBegin

NSPRemoveServiceClass

NSPSetService

WSAGetServiceClassInfo

WSAGetServiceClassNameByClassId

WSASERVICECLASSINFOW

WSASetLastError