Compartilhar via


WSPStringToAddress

Windows Mobile SupportedWindows Embedded CE Supported

9/8/2008

Essa função converte um Human-Readable seqüência de caracteres numérico para um (estrutura endereço de soquetesockaddr) adequada para passagem para rotinas Soquetes do Windows que levam tal uma estrutura.

Nenhuma parte ausente o endereço estarão padronizado para um valor razoável se possível. De exemplo, um número porta ausente será usar como padrão para zero.

Syntax

int WSPStringToAddress (
  LPWSTR AddressString,
  INT AddressFamily,
  LPWSAPROTOCOL_INFOW lpProtocolInfo,
  LPSOCKADDR lpAddress,
  LPINT lpAddressLength,
  LPINT lpErrno 
);

Parameters

  • AddressString
    [no] Aponta para o seqüência de caracteres Human-Readable zero-Terminated para converter.
  • AddressFamily
    [no] Endereço família ao qual pertence o seqüência de caracteres ou AF_UNSPEC se ele for desconhecido.
  • lpProtocolInfo
    [no] (exigido) Do provedor WSAPROTOCOL_INFOW estrutura.
  • lpAddress
    [out] Buffer que é preenchida com um único sockaddr estrutura.
  • lpAddressLength
    [in, Out] Tamanho da reserva de endereço. Retorna o tamanho do Resultant sockaddr estrutura. Se a reserva fornecida não é grande o suficiente, o função falhar com um erro específico do WSAEFAULT e este parâmetro é atualizado com o exigido tamanho em bytes.
  • lpErrno
    [out] Ponteiro para o código de erro.

Return Value

Se não houver erro, essa função retornará zero. Caso contrário, será retornado um valor de SOCKET_ERROR e um código de erro específico está disponível em lpErrno.

A seguinte tabela mostra os códigos de erro possível.

Valor de erro Descrição

WSAEFAULT

Reserva endereço especificado é muito pequena. Passar um maior reserva.

WSAEINVAL

Não é possível converter o seqüência de caracteres em um sockaddr, ou o provedor era impossível suporte a família de endereços indicado, ou especificado lpProtocolInfo Foi não referir a um WSAPROTOCOL_INFOW estrutura com suporte, o provedor.

Considerações sobre do provedor de serviço em camadas

Uma em camadas provedor serviço fornece uma implementação desta função, mas ele também é um cliente desta função se e quando ela chama WSPStringToAddress do próximo camada em encadear o provedor. Aplicar algumas considerações especiais para do esta função lpProtocolInfo parâmetro como ele é propagado para baixo através as camadas de encadear o provedor.

Se o próximo camada em encadear o provedor é outra camada e quando o próximo da camada WSPStringToAddress é chamado, esta camada deve transmitir para o próximo camada um lpProtocolInfo que faz referência a mesma mantidos inalterados WSAPROTOCOL_INFOW estrutura com as mesmo informações encadear não modificada. No entanto, se o próximo camada é o protocolo de base (that is, o elemento último no encadear), essa camada executa uma substituição quando chamado do provedor de de base WSPStringToAddress. Neste do maiúsculas e minúsculas, o provedor de base WSAPROTOCOL_INFOW estrutura deve ser relacionado pela lpProtocolInfo parâmetro.

Um beneficiar vital dessa diretiva é que serviço de base provedores não precisa estar ciente de cadeias provedor.

Esta diretiva de propagação mesmo se aplica ao propagar um WSAPROTOCOL_INFOW estrutura através uma em camadas seqüência das outras funções such as WSPAddressToString, WSPDuplicateSocket, WSPStartup, ou WSPSocket.

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

WSPAddressToString