WSCEnumNameSpaceProvidersEx32, fonction (ws2spi.h)

La fonction WSCEnumNameSpaceProvidersEx32 récupère des informations sur les fournisseurs d’espaces de noms 32 bits disponibles.

Syntaxe

INT WSAAPI WSCEnumNameSpaceProvidersEx32(
  [in, out] LPDWORD                lpdwBufferLength,
  [out]     LPWSANAMESPACE_INFOEXW lpnspBuffer
);

Paramètres

[in, out] lpdwBufferLength

En entrée, le nombre d’octets contenus dans la mémoire tampon pointée par lpnspBuffer. En sortie (si la fonction échoue et si l’erreur est WSAEFAULT), nombre minimal d’octets à allouer pour la mémoire tampon lpnspBuffer pour lui permettre de récupérer toutes les informations demandées. La mémoire tampon passée à WSCEnumNameSpaceProvidersEx32 doit être suffisante pour contenir toutes les informations d’espace de noms.

[out] lpnspBuffer

Mémoire tampon remplie de structures WSANAMESPACE_INFOEXW . Les structures retournées sont situées consécutivement en tête de la mémoire tampon. Les informations de taille variable référencées par les pointeurs dans les structures pointent vers des emplacements dans la mémoire tampon situées entre la fin des structures de taille fixe et la fin de la mémoire tampon. Le nombre de structures renseignées est la valeur de retour de WSCEnumNameSpaceProvidersEx32.

Valeur retournée

La fonction WSCEnumNameSpaceProvidersEx32 retourne le nombre de structures WSANAMESPACE_INFOEXW copiées dans lpnspBuffer. Sinon, la valeur SOCKET_ERROR est retournée et un numéro d’erreur spécifique peut être récupéré en appelant WSAGetLastError.

Code d'erreur Signification
WSAEFAULT
La longueur de la mémoire tampon était trop petite pour recevoir toutes les structures WSANAMESPACE_INFOEXW pertinentes et les informations associées, ou le paramètre lpnspBuffer était un pointeur **NULL**. Lorsque cette erreur est retournée, la longueur de mémoire tampon requise est retournée dans le paramètre lpdwBufferLength .
WSANOTINITIALISED
Le WS2_32.DLL n’a pas été initialisé. L’application doit d’abord appeler WSAStartup avant d’appeler les fonctions windows Sockets.
WSA_NOT_ENOUGH_MEMORY
La mémoire était insuffisante pour effectuer l’opération.

Remarques

WSCEnumNameSpaceProvidersEx32 est une version strictement 32 bits de WSAEnumNameSpaceProvidersEx. Sur un ordinateur 64 bits, tous les appels ne sont pas spécifiquement 32 bits (par exemple, toutes les fonctions qui ne se terminent pas par « 32 ») fonctionnent sur le catalogue 64 bits natif. Les processus qui s’exécutent sur un ordinateur 64 bits doivent utiliser les appels de fonction 32 bits spécifiques pour fonctionner sur un catalogue strictement 32 bits et préserver la compatibilité. Les définitions et la sémantique des appels 32 bits spécifiques sont les mêmes que leurs équivalents natifs.

Actuellement, le seul espace de noms inclus avec Windows qui utilise des informations dans le membre ProviderSpecific de la structure WSANAMESPACE_INFOEXW sont les fournisseurs d’espaces de noms pour l’espace de noms NS_EMAIL. Le format du membre ProviderSpecific d’un fournisseur d’espaces de noms NS_EMAIL est une structure NAPI_PROVIDER_INSTALLATION_BLOB .

La fonction SPI 32 bits équivaut à la fonction API native (WSAEnumNameSpaceProvidersEx), car il n’existe aucun concept de fournisseur d’espace de noms « masqué ».

L’objet blob de données spécifique au fournisseur associé à l’entrée d’espace de noms passé dans le paramètre lpProviderInfo à la fonction WSCInstallNameSpaceEx32 peut être interrogé à l’aide de la fonction WSCEnumNameSpaceProvidersEx32 .

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2008 [applications de bureau uniquement]
Plateforme cible Windows
En-tête ws2spi.h
Bibliothèque Ws2_32.lib
DLL Ws2_32.dll

Voir aussi

NAPI_PROVIDER_INSTALLATION_BLOB

WSAEnumNameSpaceProvidersEx

WSANAMESPACE_INFOEXW

WSCEnumNameSpaceProviders32

WSCInstallNameSpaceEx32