Função WSCEnumNameSpaceProvidersEx32 (ws2spi.h)
A função WSCEnumNameSpaceProvidersEx32 recupera informações sobre provedores de namespace de 32 bits disponíveis.
Sintaxe
INT WSAAPI WSCEnumNameSpaceProvidersEx32(
[in, out] LPDWORD lpdwBufferLength,
[out] LPWSANAMESPACE_INFOEXW lpnspBuffer
);
Parâmetros
[in, out] lpdwBufferLength
Na entrada, o número de bytes contidos no buffer apontado por lpnspBuffer. Na saída (se a função falhar e o erro for WSAEFAULT), o número mínimo de bytes a serem alocados para o buffer lpnspBuffer para permitir que ele recupere todas as informações solicitadas. O buffer passado para WSCEnumNameSpaceProvidersEx32 deve ser suficiente para manter todas as informações do namespace.
[out] lpnspBuffer
Um buffer preenchido com estruturas WSANAMESPACE_INFOEXW . As estruturas retornadas estão localizadas consecutivamente no cabeçalho do buffer. As informações de tamanho variável referenciadas por ponteiros nas estruturas apontam para locais dentro do buffer localizado entre o final das estruturas de tamanho fixo e o final do buffer. O número de estruturas preenchidas é o valor retornado de WSCEnumNameSpaceProvidersEx32.
Retornar valor
A função WSCEnumNameSpaceProvidersEx32 retorna o número de estruturas WSANAMESPACE_INFOEXW copiadas para lpnspBuffer. Caso contrário, o valor SOCKET_ERROR será retornado e um número de erro específico poderá ser recuperado chamando WSAGetLastError.
Código do erro | Significado |
---|---|
O comprimento do buffer era muito pequeno para receber todas as estruturas de WSANAMESPACE_INFOEXW relevantes e informações associadas ou o parâmetro lpnspBuffer era um ponteiro **NULL**. Quando esse erro é retornado, o comprimento do buffer necessário é retornado no parâmetro lpdwBufferLength . | |
O WS2_32.DLL não foi inicializado. O aplicativo deve primeiro chamar WSAStartup antes de chamar qualquer função do Windows Sockets. | |
Não havia memória suficiente para executar a operação. |
Comentários
WSCEnumNameSpaceProvidersEx32 é uma versão estritamente de 32 bits do WSAEnumNameSpaceProvidersEx. Em um computador de 64 bits, todas as chamadas não são especificamente de 32 bits (por exemplo, todas as funções que não terminam em "32") operam no catálogo nativo de 64 bits. Os processos executados em um computador de 64 bits devem usar as chamadas de função específicas de 32 bits para operar em um catálogo estritamente de 32 bits e preservar a compatibilidade. As definições e a semântica das chamadas específicas de 32 bits são as mesmas que suas contrapartes nativas.
Atualmente, o único namespace incluído no Windows que usa informações no membro ProviderSpecific da estrutura WSANAMESPACE_INFOEXW são provedores de namespace para o namespace NS_EMAIL. O formato do membro ProviderSpecific para um provedor de namespace NS_EMAIL é uma estrutura NAPI_PROVIDER_INSTALLATION_BLOB .
A função SPI de 32 bits é equivalente à função de API nativa (WSAEnumNameSpaceProvidersEx) porque não há nenhum conceito de um provedor de namespace "oculto".
O blob de dados específico do provedor associado à entrada de namespace passado no parâmetro lpProviderInfo para a função WSCInstallNameSpaceEx32 pode ser consultado usando a função WSCEnumNameSpaceProvidersEx32 .
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows Vista [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows Server 2008 [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | ws2spi.h |
Biblioteca | Ws2_32.lib |
DLL | Ws2_32.dll |