Función WSAEnumNameSpaceProvidersExA (winsock2.h)
La función WSAEnumNameSpaceProvidersEx recupera información sobre los proveedores de espacios de nombres disponibles.
Sintaxis
INT WSAAPI WSAEnumNameSpaceProvidersExA(
[in, out] LPDWORD lpdwBufferLength,
[out] LPWSANAMESPACE_INFOEXA 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 para el búfer de lpnspBuffer para permitirle recuperar toda la información solicitada. El búfer pasado a WSAEnumNameSpaceProvidersEx debe ser suficiente para contener toda la información del espacio de nombres.
[out] lpnspBuffer
Búfer que se rellena con estructuras de WSANAMESPACE_INFOEX. 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 WSAEnumNameSpaceProvidersEx.
Valor devuelto
La función WSAEnumNameSpaceProvidersEx
Código de error | Significado |
---|---|
El parámetro lpnspBuffer era un puntero NULL o la longitud del búfer, lpdwBufferLength, era demasiado pequeño para recibir todas las estructuras de WSANAMESPACE_INFOEX pertinentes e información asociada. Cuando se devuelve este error, se devuelve la longitud del búfer necesaria en el parámetro lpdwBufferLength. | |
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. | |
No había memoria suficiente para realizar la operación. |
Observaciones
La función
Actualmente, el único proveedor de espacio de nombres incluido con Windows que establece información en el ProviderSpecific miembro de la estructura WSANAMESPACE_INFOEX es el proveedor de NS_EMAIL. El formato del miembro ProviderSpecific de
Cuando se define UNICODE o _UNICODE, WSAEnumNameSpaceProvidersEx se define en WSAEnumNameSpaceProvidersExW, la versión Unicode de esta función. El parámetro lpnspBuffer se define en el tipo de datos LPSAWSANAMESPACE_INFOEXW y las estructuras de WSANAMESPACE_INFOEXW se devuelven correctamente.
Cuando no se define UNICODE o _UNICODE, se define WSAEnumNameSpaceProvidersEx WSAEnumNameSpaceProvidersExA, la versión ANSI de esta función. El parámetro
windows 8.1 y Windows Server 2012 R2: la función WSAEnumNameSpaceProvidersExW es compatible con las aplicaciones de la Tienda Windows en Windows 8.1, Windows Server 2012 R2 y versiones posteriores.
Nota
El encabezado winsock2.h define WSAEnumNameSpaceProvidersEx como alias que selecciona automáticamente la versión ANSI o Unicode de esta función en función de la definición de la constante de preprocesador UNICODE. La combinación del uso del alias neutral de codificación con código que no es neutral de codificación puede dar lugar a errores de coincidencia que dan lugar a errores de compilación o tiempo de ejecución. Para obtener más información, vea Conventions for Function Prototypes.
Requisitos
Requisito | Valor |
---|---|
cliente mínimo admitido | Windows 8.1, Windows Vista [aplicaciones de escritorio | Aplicaciones para UWP] |
servidor mínimo admitido | Windows Server 2008 [aplicaciones de escritorio | Aplicaciones para UWP] |
de la plataforma de destino de |
Windows |
encabezado de |
winsock2.h |
biblioteca de |
Ws2_32.lib |
DLL de |
Ws2_32.dll |