Compartilhar via


DatagramSocket.BindServiceNameAsync Método

Definição

Sobrecargas

BindServiceNameAsync(String)

Inicia uma operação de associação em um DatagramSocket a um nome de serviço local.

BindServiceNameAsync(String, NetworkAdapter)

Inicia uma operação de associação em um DatagramSocket para um nome de serviço local e um adaptador de rede específico.

BindServiceNameAsync(String)

Inicia uma operação de associação em um DatagramSocket a um nome de serviço local.

public:
 virtual IAsyncAction ^ BindServiceNameAsync(Platform::String ^ localServiceName) = BindServiceNameAsync;
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncAction BindServiceNameAsync(winrt::hstring const& localServiceName);
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncAction BindServiceNameAsync(string localServiceName);
function bindServiceNameAsync(localServiceName)
Public Function BindServiceNameAsync (localServiceName As String) As IAsyncAction

Parâmetros

localServiceName
String

Platform::String

winrt::hstring

O nome do serviço local ou a porta UDP na qual associar o objeto DatagramSocket .

Retornos

Uma operação de associação assíncrona em um objeto DatagramSocket .

Atributos

Requisitos do Windows

Funcionalidades do aplicativo
ID_CAP_NETWORKING [Windows Phone] internetClientServer privateNetworkClientServer

Comentários

O método BindServiceNameAsync é associado aos endereços IP locais de todos os adaptadores de rede no computador local no nome do serviço local ou na porta UDP especificada no parâmetro localServiceName . Se o parâmetro localServiceName for uma cadeia de caracteres vazia, o sistema selecionará a porta UDP local na qual associar.

A menos que você tenha usado a propriedade DatagramSocketControl.MulticastOnly , o método BindServiceNameAsync falhará se outro aplicativo usando UDP (outro DatagramSocket, por exemplo) já tiver sido associado à porta UDP local especificada no parâmetro localServiceName .

A associação é essencial para receber dados de qualquer ponto de extremidade remoto em um DatagramSocket e normalmente é feita depois que um soquete é criado e o evento MessageReceived foi definido. O método BindServiceNameAsync ou BindEndpointAsync é usado para associar um DatagramSocket a um nome de serviço local ou porta UDP. Os métodos ConnectAsync também resultarão em uma operação de associação. Gravar em um fluxo retornado por um dos métodos GetOutputStreamAsync também resultará em uma operação de associação se o soquete ainda não estiver associado.

Os métodos BindServiceNameAsync e BindEndpointAsync não são necessários nos seguintes casos:

  • O DatagramSocket é usado apenas para enviar dados.
  • O DatagramSocket é usado para enviar dados e receber dados de um único ponto de extremidade.

Confira também

Aplica-se a

BindServiceNameAsync(String, NetworkAdapter)

Inicia uma operação de associação em um DatagramSocket para um nome de serviço local e um adaptador de rede específico.

public:
 virtual IAsyncAction ^ BindServiceNameAsync(Platform::String ^ localServiceName, NetworkAdapter ^ adapter) = BindServiceNameAsync;
/// [Windows.Foundation.Metadata.Overload("BindServiceNameAndAdapterAsync")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncAction BindServiceNameAsync(winrt::hstring const& localServiceName, NetworkAdapter const& adapter);
[Windows.Foundation.Metadata.Overload("BindServiceNameAndAdapterAsync")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncAction BindServiceNameAsync(string localServiceName, NetworkAdapter adapter);
function bindServiceNameAsync(localServiceName, adapter)
Public Function BindServiceNameAsync (localServiceName As String, adapter As NetworkAdapter) As IAsyncAction

Parâmetros

localServiceName
String

Platform::String

winrt::hstring

O nome do serviço local ou a porta UDP na qual associar o objeto DatagramSocket .

adapter
NetworkAdapter

O adaptador de rede no qual associar o objeto DatagramSocket .

Retornos

Uma operação de associação assíncrona em um objeto DatagramSocket .

Atributos

Comentários

O método [BindServiceNameAsync(String, NetworkAdapter) é associado a um adaptador de rede especificado no parâmetro do adaptador e ao nome do serviço local ou à porta UDP especificada no parâmetro localServiceName no computador local. Se o parâmetro localServiceName for uma cadeia de caracteres vazia, o sistema selecionará a porta UDP local na qual associar. Se o parâmetro do adaptador for nulo, ocorrerá um erro.

O mecanismo de resolução de nomes usado pelo método [BindServiceNameAsync(String, NetworkAdapter) é limitado à interface especificada para o namespace do DNS (sistema de nomes de domínio).

A menos que você tenha usado a propriedade DatagramSocketControl.MulticastOnly , o método BindServiceNameAsync falhará se outro aplicativo usando UDP (outro DatagramSocket, por exemplo) já tiver sido associado à porta UDP local especificada no parâmetro localServiceName na mesma interface de rede.

A associação é essencial para receber dados de qualquer ponto de extremidade remoto em um DatagramSocket e normalmente é feita depois que um soquete é criado e o evento MessageReceived foi definido. O método BindServiceNameAsync ou BindEndpointAsync é usado para associar um DatagramSocket a um nome de serviço local ou porta UDP. Os métodos ConnectAsync também resultarão em uma operação de associação, mas não podem ser limitados a um adaptador de rede específico. Gravar em um fluxo retornado por um dos métodos GetOutputStreamAsync também resultará em uma operação de associação se o soquete ainda não estiver associado, mas não puder se limitar a um adaptador de rede específico.

Os métodos BindServiceNameAsync e BindEndpointAsync não são necessários nos seguintes casos:

  • O DatagramSocket é usado apenas para enviar dados.
  • O DatagramSocket é usado para enviar dados e receber dados de um único ponto de extremidade.

Se o método [BindServiceNameAsync(String, NetworkAdapter) for usado, a operação de associação limitará os pacotes multicast e unicast de entrada e saída ao adaptador especificado.

O uso do adaptador de rede especificado é uma base de melhor esforço. Entre outras configurações, sistemas com adaptadores configurados em modos de host fraco ou encaminhamento podem usar um adaptador diferente do adaptador especificado.

Confira também

Aplica-se a