Função WSCEnumNameSpaceProviders32 (ws2spi.h)

A função WSCEnumNameSpaceProviders32 retorna informações sobre provedores de namespace de 32 bits disponíveis.

Nota Essa chamada é uma versão estritamente de 32 bits do WSAEnumNameSpaceProviders para uso em plataformas de 64 bits. Ele é fornecido para permitir que processos de 64 bits acessem os catálogos de 32 bits.

 

Sintaxe

INT WSAAPI WSCEnumNameSpaceProviders32(
  [in, out] LPDWORD              lpdwBufferLength,
  [out]     LPWSANAMESPACE_INFOW 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 WSCEnumNameSpaceProviders32 deve ser suficiente para conter todas as informações do namespace.

[out] lpnspBuffer

Um buffer preenchido com estruturas de WSANAMESPACE_INFOW . As estruturas retornadas estão localizadas consecutivamente na cabeça 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 WSCEnumNameSpaceProviders32.

Retornar valor

A função WSCEnumNameSpaceProviders32 retorna o número de estruturas de WSANAMESPACE_INFOW 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
WSAEFAULT
O parâmetro lpnspBuffer era um ponteiro **NULL** ou o comprimento do buffer, lpdwBufferLength, era muito pequeno para receber todas as estruturas de WSANAMESPACE_INFOW relevantes e informações associadas. Quando esse erro é retornado, o comprimento do buffer necessário é retornado no parâmetro lpdwBufferLength .
WSANOTINITIALISED
O WS2_32.DLL não foi inicializado. O aplicativo deve primeiro chamar WSAStartup antes de chamar qualquer função do Windows Sockets.
WSA_NOT_ENOUGH_MEMORY
Não havia memória suficiente para executar a operação.

Comentários

WSCEnumNameSpaceProviders32 é uma versão estritamente de 32 bits do WSAEnumNameSpaceProviders. Em um computador de 64 bits, todas as chamadas nã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 específicas de função 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 seus equivalentes nativos.

A função SPI de 32 bits é equivalente à função de API nativa (WSAEnumNameSpaceProviders) porque não há nenhum conceito de um provedor de namespace "oculto".

A função WSCEnumNameSpaceProviders32 é uma função somente Unicode e retorna WSANAMESPACE_INFOEXW estruturas.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista, Windows XP Professional x64 Edition [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Windows Server 2008, Windows Server 2003 x64 Edition [somente aplicativos da área de trabalho]
Plataforma de Destino Windows
Cabeçalho ws2spi.h
Biblioteca Ws2_32.lib
DLL Ws2_32.dll

Confira também

WSAEnumNameSpaceProviders

WSANAMESPACE_INFOW

WSCInstallNameSpace32

WSCInstallNameSpaceEx32