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 |
---|---|
Tidak tersedia cukup memori untuk melakukan operasi ini. | |
Rutinitas panggilan tidak memiliki hak istimewa yang memadai untuk mengakses informasi. | |
Buffer yang ditujukkan oleh parameter lpServiceClass terlalu kecil untuk berisi struktur WSASERVICECLASSINFOW . Aplikasi perlu meneruskan buffer yang lebih besar. | |
Pengidentifikasi kelas layanan atau pengidentifikasi penyedia namespace yang ditentukan tidak valid. Kesalahan ini dikembalikan jika parameter lpProviderId, lpServiceClassId, lpdwBufSize, atau lpServiceClassInfo adalah **NULL**. | |
Operasi ini tidak didukung. Kesalahan ini dikembalikan jika penyedia namespace tidak mengimplementasikan fungsi ini. | |
Nama yang diminta valid, tetapi tidak ada data dari jenis yang diminta yang ditemukan. | |
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 |