Funzione di callback LPNSPGETSERVICECLASSINFO (ws2spi.h)
La funzione NSPGetServiceClassInfo recupera tutte le informazioni pertinenti sulla classe (schema) relative al provider dello spazio dei nomi. Questa chiamata recupera tutte le informazioni specifiche dello spazio dei nomi comuni a tutte le istanze del servizio, incluse le informazioni di connessione per SAP o le informazioni sulla porta per SAP o TCP.
Sintassi
LPNSPGETSERVICECLASSINFO Lpnspgetserviceclassinfo;
INT Lpnspgetserviceclassinfo(
[in] LPGUID lpProviderId,
[in, out] LPDWORD lpdwBufSize,
[in, out] LPWSASERVICECLASSINFOW lpServiceClassInfo
)
{...}
Parametri
[in] lpProviderId
Puntatore al GUID del provider dello spazio dei nomi specifico da cui recuperare lo schema della classe del servizio.
[in, out] lpdwBufSize
In input, le dimensioni, in byte, del buffer a cui punta il parametro lpServiceClassInfo .
Nell'output, se la funzione ha esito negativo e l'errore è WSAEFAULT, questo parametro specifica le dimensioni minime, in byte, del buffer a cui punta il parametro lpServiceClassInfo necessario per recuperare il record.
[in, out] lpServiceClassInfo
Restituisce un puntatore alla struttura WSASERVICECLASSINFOW che contiene la classe del servizio alle informazioni di mapping specifiche dello spazio dei nomi. Il parametro lpServiceClassId deve essere compilato per indicare quale record WSASERVICECLASSINFOW deve essere restituito.
Valore restituito
Se non si verifica alcun errore, la funzione NSPGetServiceClassInfo restituisce NO_ERROR (zero). In caso contrario, viene restituito SOCKET_ERROR (-1) e il provider dello spazio dei nomi deve impostare il codice di errore appropriato usando WSASetLastError.
Codice di errore | Significato |
---|---|
Memoria insufficiente per eseguire questa operazione. | |
La routine chiamante non dispone di privilegi sufficienti per accedere alle informazioni. | |
Il buffer a cui punta il parametro lpServiceClass era troppo piccolo per contenere una struttura WSASERVICECLASSINFOW . L'applicazione deve passare un buffer più grande. | |
L'identificatore della classe di servizio o l'identificatore del provider dello spazio dei nomi specificato non è valido. Questo errore viene restituito se i parametri lpProviderId, lpServiceClassId, lpdwBufSize o lpServiceClassInfo sono **NULL**. | |
L'operazione non è supportata. Questo errore viene restituito se il provider dello spazio dei nomi non implementa questa funzione. | |
Il nome richiesto è valido, ma non sono stati trovati dati del tipo richiesto. | |
La classe specificata non è stata trovata. |
Commenti
Il W2_32.dll usa questa funzione per implementare la funzione WSAGetServiceClassNameByClassId , nonché per recuperare le informazioni specifiche dello spazio dei nomi passate alle funzioni NSPLookupServiceBegin e NSPSetService .
Requisiti
Client minimo supportato | Windows 2000 Professional [solo app desktop] |
Server minimo supportato | Windows 2000 Server [solo app desktop] |
Piattaforma di destinazione | Windows |
Intestazione | ws2spi.h |