Fonction de rappel LPNSPGETSERVICECLASSINFO (ws2spi.h)
La fonction NSPGetServiceClassInfo récupère toutes les informations de classe pertinentes (schéma) relatives au fournisseur d’espaces de noms. Cet appel récupère toutes les informations spécifiques à l’espace de noms communes à toutes les instances du service, y compris les informations de connexion pour SAP ou les informations de port pour SAP ou TCP.
Syntaxe
LPNSPGETSERVICECLASSINFO Lpnspgetserviceclassinfo;
INT Lpnspgetserviceclassinfo(
[in] LPGUID lpProviderId,
[in, out] LPDWORD lpdwBufSize,
[in, out] LPWSASERVICECLASSINFOW lpServiceClassInfo
)
{...}
Paramètres
[in] lpProviderId
Pointeur vers le GUID du fournisseur d’espace de noms spécifique à partir duquel le schéma de classe de service doit être récupéré.
[in, out] lpdwBufSize
En entrée, la taille, en octets, de la mémoire tampon pointée par le paramètre lpServiceClassInfo .
En sortie, si la fonction échoue et que l’erreur est WSAEFAULT, ce paramètre spécifie la taille minimale, en octets, de la mémoire tampon pointée vers le paramètre lpServiceClassInfo nécessaire pour récupérer l’enregistrement.
[in, out] lpServiceClassInfo
Retourne un pointeur vers la structure WSASERVICECLASSINFOW qui contient la classe de service vers des informations de mappage spécifiques à l’espace de noms. Le paramètre lpServiceClassId doit être renseigné pour indiquer quel enregistrement WSASERVICECLASSINFOW doit être retourné.
Valeur retournée
Si aucune erreur ne se produit, la fonction NSPGetServiceClassInfo retourne NO_ERROR (zéro). Sinon, SOCKET_ERROR (–1) est retourné et le fournisseur d’espaces de noms doit définir le code d’erreur approprié à l’aide de WSASetLastError.
Code d'erreur | Signification |
---|---|
La mémoire disponible est insuffisante pour effectuer cette opération. | |
La routine d’appel ne dispose pas des privilèges suffisants pour accéder aux informations. | |
La mémoire tampon pointée vers le paramètre lpServiceClass était trop petite pour contenir une structure WSASERVICECLASSINFOW . L’application doit passer une mémoire tampon plus grande. | |
L’identificateur de classe de service ou l’identificateur de fournisseur d’espace de noms spécifié n’est pas valide. Cette erreur est retournée si les paramètres lpProviderId, lpServiceClassId, lpdwBufSize ou lpServiceClassInfo sont **NULL**. | |
L'opération n'est pas prise en charge. Cette erreur est retournée si le fournisseur d’espaces de noms n’implémente pas cette fonction. | |
Le nom demandé est valide, mais aucune donnée du type requis n'a été trouvée. | |
La classe spécifiée est introuvable. |
Remarques
Le W2_32.dll utilise cette fonction pour implémenter la fonction WSAGetServiceClassNameByClassId , ainsi que pour récupérer les informations spécifiques à l’espace de noms transmises aux fonctions NSPLookupServiceBegin et NSPSetService .
Spécifications
Client minimal pris en charge | Windows 2000 Professionnel [applications de bureau uniquement] |
Serveur minimal pris en charge | Windows 2000 Server [applications de bureau uniquement] |
Plateforme cible | Windows |
En-tête | ws2spi.h |
Voir aussi
Commentaires
https://aka.ms/ContentUserFeedback.
Bientôt disponible : Tout au long de 2024, nous allons supprimer progressivement GitHub Issues comme mécanisme de commentaires pour le contenu et le remplacer par un nouveau système de commentaires. Pour plus d’informations, consultezEnvoyer et afficher des commentaires pour