DatagramSocket.BindServiceNameAsync Metodo
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Overload
BindServiceNameAsync(String) |
Avvia un'operazione di associazione in un datagramSocket a un nome del servizio locale. |
BindServiceNameAsync(String, NetworkAdapter) |
Avvia un'operazione di associazione in un datagramSocket a un nome del servizio locale e a un'interfaccia di rete specifica. |
BindServiceNameAsync(String)
Avvia un'operazione di associazione in un datagramSocket a un nome del servizio locale.
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
Parametri
- localServiceName
-
String
Platform::String
winrt::hstring
Nome del servizio locale o porta UDP in cui associare l'oggetto DatagramSocket .
Restituisce
Operazione di associazione asincrona in un oggetto DatagramSocket .
- Attributi
Requisiti Windows
Funzionalità dell'app |
ID_CAP_NETWORKING [Windows Phone]
internetClientServer
privateNetworkClientServer
|
Commenti
Il metodo BindServiceNameAsync associa agli indirizzi IP locali di tutte le interfacce di rete nel computer locale nel nome del servizio locale o alla porta UDP specificata nel parametro localServiceName . Se il parametro localServiceName è una stringa vuota, il sistema selezionerà la porta UDP locale su cui associare.
A meno che non sia stata usata la proprietà DatagramSocketControl.MulticastOnly , il metodo BindServiceNameAsync avrà esito negativo se un'altra app che usa UDP (un altro DatagramSocket, ad esempio) è già stata associata alla porta UDP locale specificata nel parametro localServiceName .
L'associazione è essenziale per ricevere dati da qualsiasi endpoint remoto in un datagramSocket e viene comunemente eseguita dopo la creazione di un socket e l'evento MessageReceived è stato impostato. Il metodo BindServiceNameAsync o BindEndpointAsync viene usato per associare un datagramSocket a un nome del servizio locale o a una porta UDP. I metodi ConnectAsync comportano anche un'operazione di associazione. La scrittura in un flusso restituito da uno dei metodi GetOutputStreamAsync comporterà anche un'operazione di associazione se il socket non è già associato.
I metodi BindServiceNameAsync e BindEndpointAsync non sono necessari nei casi seguenti:
- DatagramSocket viene usato solo per inviare dati.
- DatagramSocket viene usato per inviare dati a e ricevere dati da un singolo endpoint.
Vedi anche
- BindEndpointAsync(HostName, String)
- BindServiceNameAsync(String, NetworkAdapter)
- DatagramSocketInformation
Si applica a
BindServiceNameAsync(String, NetworkAdapter)
Avvia un'operazione di associazione in un datagramSocket a un nome del servizio locale e a un'interfaccia di rete specifica.
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
Parametri
- localServiceName
-
String
Platform::String
winrt::hstring
Nome del servizio locale o porta UDP in cui associare l'oggetto DatagramSocket .
- adapter
- NetworkAdapter
Scheda di rete in cui associare l'oggetto DatagramSocket .
Restituisce
Operazione di associazione asincrona in un oggetto DatagramSocket .
- Attributi
Commenti
Il metodo [BindServiceNameAsync(String, NetworkAdapter) associa a un'interfaccia di rete specificata nel parametro della scheda e al nome del servizio locale o alla porta UDP specificata nel parametro localServiceName nel computer locale. Se il parametro localServiceName è una stringa vuota, il sistema selezionerà la porta UDP locale su cui associare. Se il parametro dell'adattatore è Null, si verificherà un errore.
Il meccanismo di risoluzione dei nomi usato dal metodo [BindServiceNameAsync(String, NetworkAdapter) è limitato all'interfaccia specificata per lo spazio dei nomi DNS (Domain Name System).
A meno che non sia stata usata la proprietà DatagramSocketControl.MulticastOnly, il metodo BindServiceNameAsync avrà esito negativo se un'altra app che usa UDP (un altro DatagramSocket, ad esempio) è già stata associata alla porta UDP locale specificata nel parametro localServiceName nella stessa interfaccia di rete.
L'associazione è essenziale per ricevere dati da qualsiasi endpoint remoto in un datagramSocket e viene comunemente eseguita dopo la creazione di un socket e l'evento MessageReceived è stato impostato. Il metodo BindServiceNameAsync o BindEndpointAsync viene usato per associare un datagramSocket a un nome del servizio locale o a una porta UDP. I metodi ConnectAsync comportano anche un'operazione di associazione, ma non possono essere limitati a una scheda di rete specifica. La scrittura in un flusso restituito da uno dei metodi GetOutputStreamAsync comporta anche un'operazione di associazione se il socket non è già associato, ma non può essere limitato a una scheda di rete specifica.
I metodi BindServiceNameAsync e BindEndpointAsync non sono necessari nei casi seguenti:
- DatagramSocket viene usato solo per inviare dati.
- DatagramSocket viene usato per inviare dati a e ricevere dati da un singolo endpoint.
Se viene usato il metodo [BindServiceNameAsync(String, NetworkAdapter), l'operazione di associazione limiterà i pacchetti multicast in ingresso e in uscita e unicast alla scheda specificata.
L'uso della scheda di rete specificata è su base ottimale. Tra le altre configurazioni, i sistemi con adattatori configurati in modalità host debole o inoltro possono usare una scheda diversa dalla scheda specificata.