Función WSCEnumNameSpaceProviders32 (ws2spi.h)

La función WSCEnumNameSpaceProviders32 devuelve información sobre los proveedores de espacios de nombres de 32 bits disponibles.

Nota Esta llamada es una versión estricta de 32 bits de WSAEnumNameSpaceProviders para su uso en plataformas de 64 bits. Se proporciona para permitir que los procesos de 64 bits accedan a los catálogos de 32 bits.

 

Sintaxis

INT WSAAPI WSCEnumNameSpaceProviders32(
  [in, out] LPDWORD              lpdwBufferLength,
  [out]     LPWSANAMESPACE_INFOW lpnspBuffer
);

Parámetros

[in, out] lpdwBufferLength

En la entrada, el número de bytes contenidos en el búfer al que apunta lpnspBuffer. En la salida (si se produce un error en la función y el error es WSAEFAULT), el número mínimo de bytes que se asignarán al búfer lpnspBuffer para permitir que recupere toda la información solicitada. El búfer pasado a WSCEnumNameSpaceProviders32 debe ser suficiente para contener toda la información del espacio de nombres.

[out] lpnspBuffer

Búfer que se rellena con estructuras WSANAMESPACE_INFOW . Las estructuras devueltas se encuentran consecutivamente en el encabezado del búfer. Información de tamaño variable a la que hacen referencia los punteros de las estructuras apunta a ubicaciones dentro del búfer ubicado entre el final de las estructuras de tamaño fijo y el final del búfer. El número de estructuras rellenadas es el valor devuelto de WSCEnumNameSpaceProviders32.

Valor devuelto

La función WSCEnumNameSpaceProviders32 devuelve el número de estructuras de WSANAMESPACE_INFOW copiadas en lpnspBuffer. De lo contrario, se devuelve el valor SOCKET_ERROR y se puede recuperar un número de error específico mediante una llamada a WSAGetLastError.

Código de error Significado
WSAEFAULT
El parámetro lpnspBuffer era un puntero **NULL** o la longitud del búfer, lpdwBufferLength, era demasiado pequeña para recibir todas las estructuras WSANAMESPACE_INFOW pertinentes e información asociada. Cuando se devuelve este error, se devuelve la longitud del búfer necesaria en el parámetro lpdwBufferLength .
WSANOTINITIALISED
No se ha inicializado el WS2_32.DLL. La aplicación debe llamar primero a WSAStartup antes de llamar a cualquier función de Windows Sockets.
WSA_NOT_ENOUGH_MEMORY
No había memoria suficiente para realizar la operación.

Comentarios

WSCEnumNameSpaceProviders32 es una versión estricta de 32 bits de WSAEnumNameSpaceProviders. En un equipo de 64 bits, todas las llamadas no son específicamente de 32 bits (por ejemplo, todas las funciones que no terminan en "32") funcionan en el catálogo nativo de 64 bits. Los procesos que se ejecutan en un equipo de 64 bits deben usar las llamadas de función específicas de 32 bits para funcionar en un catálogo estrictamente de 32 bits y conservar la compatibilidad. Las definiciones y la semántica de las llamadas específicas de 32 bits son las mismas que sus equivalentes nativos.

La función SPI de 32 bits es equivalente a la función de API nativa (WSAEnumNameSpaceProviders) porque no hay ningún concepto de proveedor de espacio de nombres "oculto".

La función WSCEnumNameSpaceProviders32 es solo una función Unicode y devuelve WSANAMESPACE_INFOEXW estructuras.

Requisitos

Requisito Value
Cliente mínimo compatible Windows Vista, Windows XP Professional x64 Edition [solo aplicaciones de escritorio]
Servidor mínimo compatible Windows Server 2008, Windows Server 2003 x64 Edition [solo aplicaciones de escritorio]
Plataforma de destino Windows
Encabezado ws2spi.h
Library Ws2_32.lib
Archivo DLL Ws2_32.dll

Consulte también

WSAEnumNameSpaceProviders

WSANAMESPACE_INFOW

WSCInstallNameSpace32

WSCInstallNameSpaceEx32