Compartilhar via


WSCEnumProtocols

Windows Mobile SupportedWindows Embedded CE Supported

9/8/2008

Essa função recupera informações sobre disponível protocolos transporte.

Syntax

int WSCEnumProtocols(
  LPINT lpiProtocols,
  LPWSAPROTOCOL_INFOW lpProtocolBuffer,
  LPDWORD lpdwBufferLength,
  LPINT lpErrno 
);

Parameters

  • lpiProtocols
    [no] Matriz NULL-Terminated de iProtocol Os valores. Este parâmetro é opcional; Se lpiProtocols é NULL, informações em disponível todos os protocolos é retornado. Caso contrário, informações são recuperadas somente para os protocolos listados na matriz.
  • lpProtocolBuffer
    [out] Buffer que é preenchida com estruturas.
  • lpdwBufferLength
    [in, Out] Na entrada, a contagem de bytes na lpProtocolBuffer reserva passado para WSCEnumProtocols. Na saída, o tamanho do buffer mínimo que pode ser passado para WSCEnumProtocols Para recuperar todos os as informações solicitadas.
  • lpErrno
    [out] Ponteiro para o código de erro.

Return Value

Se não houver erro, essa função retorna o número de protocolos a serem relatados no. Caso contrário, será retornado um valor de SOCKET_ERROR e um código de erro específico está disponível em lpErrno.

Valor de erro Descrição

WSAEFAULT

Uma ou mais do argumentsis não EM UM válido parte espaço de endereço o usuário.

WSAEINVAL

Indica que um dos parâmetros especificados estava inválido.

WSAENOBUFS

Comprimento de buffer era muito pequeno para receber todas as estruturas relevantes e associado informações. Passe uma reserva pelo menos tão grande quanto o valor retornado nos lpdwBufferLength.

Remarks

Essa função é usada para descobrir informações sobre a coleção de protocolos transporte instalados o local de máquina. Essa função difere seu duplicata API, WSAEnumProtocols, em que as estruturas para todos os instalado protocolos, incluindo em camadas protocolos, pode ser obtido. (WSAEnumProtocols Somente retorna informações no protocolos de base e provedor cadeias.) O lpiProtocols parâmetro pode ser usado como um filtro para restringir a quantidade de informações fornecidas. Normalmente, um NULL ponteiro é fornecido para a função retornará informações em disponível todos os protocolos transporte.

Uma estrutura é fornecida na reserva apontada pelo lpProtocolBuffer Para cada solicitada protocolo. Se a reserva fornecida não for grande o suficiente, conforme indicado pela entrada de valor lpdwBufferLength, o valor apontado pelo lpdwBufferLength será atualizado para indicar o exigido tamanho do buffer. O cliente Windows Sockets SPI, em seguida, deverá obter uma reserva grande o suficiente e chamar essa função novamente. O WSCEnumProtocols função não é possível enumerar sobre múltiplo chama; a reserva Passed-in deve ser grande o suficiente para armazenar todos os esperados entradas em ordem para a função seja bem-sucedida. Isso reduz a complexidade da função e não deve representar um problema porque o número de protocolos carregados em uma máquina é geralmente pequeno.

A ordem na qual o WSAPROTOCOL_INFOW Estruturas constar a reserva coincide com a ordem na qual as entradas protocolo foram registradas pelo provedor de serviço com o ws2.dll, ou com qualquer reordenando subseqüentes que pode ter ocorrido por meio de Add-in Soquetes do Windows fornecido para estabelecer provedores transporte usar como padrão.

Requirements

Header ws2spi.h
Library Ws2.lib
Windows Embedded CE Windows CE .NET 4.0 and later
Windows Mobile Windows Mobile Version 5.0 and later

See Also

Reference

WSAPROTOCOL_INFO