Freigeben über


DatagramSocket.BindServiceNameAsync Methode

Definition

Überlädt

BindServiceNameAsync(String)

Startet einen Bindungsvorgang für ein DatagramSocket an einen lokalen Dienstnamen.

BindServiceNameAsync(String, NetworkAdapter)

Startet einen Bindungsvorgang für ein DatagramSocket an einen lokalen Dienstnamen und eine bestimmte Netzwerkschnittstelle.

BindServiceNameAsync(String)

Startet einen Bindungsvorgang für ein DatagramSocket an einen lokalen Dienstnamen.

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

Parameter

localServiceName
String

Platform::String

winrt::hstring

Der Name des lokalen Diensts oder der UDP-Port, an den das DatagramSocket-Objekt gebunden werden soll.

Gibt zurück

Ein asynchroner Bindungsvorgang für ein DatagramSocket-Objekt .

Attribute

Windows-Anforderungen

App-Funktionen
ID_CAP_NETWORKING [Windows Phone] internetClientServer privateNetworkClientServer

Hinweise

Die BindServiceNameAsync-Methode bindet an die lokalen IP-Adressen aller Netzwerkschnittstellen auf dem lokalen Computer auf dem lokalen Dienstnamen oder UDP-Port, der im localServiceName-Parameter angegeben ist. Wenn der parameter localServiceName eine leere Zeichenfolge ist, wählt das System den lokalen UDP-Port aus, an den gebunden werden soll.

Sofern Sie die DatagramSocketControl.MulticastOnly-Eigenschaft nicht verwendet haben, schlägt die BindServiceNameAsync-Methode fehl, wenn eine andere App, die UDP verwendet (z. B. ein anderes DatagramSocket), bereits an den lokalen UDP-Port gebunden wurde, der im localServiceName-Parameter angegeben ist.

Die Bindung ist für den Empfang von Daten von jedem Remoteendpunkt auf einem DatagramSocket unerlässlich und erfolgt in der Regel, nachdem ein Socket erstellt und das MessageReceived-Ereignis festgelegt wurde. Die BindServiceNameAsync - oder BindEndpointAsync-Methode wird verwendet, um ein DatagramSocket an einen lokalen Dienstnamen oder UDP-Port zu binden. Die ConnectAsync-Methoden führen auch zu einem Bindungsvorgang. Das Schreiben in einen Stream, der von einer der GetOutputStreamAsync-Methoden zurückgegeben wird, führt auch zu einem Bindungsvorgang, wenn der Socket noch nicht gebunden ist.

Die Methoden BindServiceNameAsync und BindEndpointAsync sind in den folgenden Fällen nicht erforderlich:

  • Das DatagramSocket wird nur zum Senden von Daten verwendet.
  • Das DatagramSocket wird verwendet, um Daten an einen einzelnen Endpunkt zu senden und von diesen zu empfangen.

Weitere Informationen

Gilt für:

BindServiceNameAsync(String, NetworkAdapter)

Startet einen Bindungsvorgang für ein DatagramSocket an einen lokalen Dienstnamen und eine bestimmte Netzwerkschnittstelle.

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

Parameter

localServiceName
String

Platform::String

winrt::hstring

Der Name des lokalen Diensts oder der UDP-Port, an den das DatagramSocket-Objekt gebunden werden soll.

adapter
NetworkAdapter

Der Netzwerkadapter, an den das DatagramSocket-Objekt gebunden werden soll.

Gibt zurück

Ein asynchroner Bindungsvorgang für ein DatagramSocket-Objekt .

Attribute

Hinweise

Die [BindServiceNameAsync(String, NetworkAdapter)-Methode wird an eine Netzwerkschnittstelle gebunden, die im Adapterparameter angegeben ist, und an den lokalen Dienstnamen oder UDP-Port, der im localServiceName-Parameter auf dem lokalen Computer angegeben ist. Wenn der parameter localServiceName eine leere Zeichenfolge ist, wählt das System den lokalen UDP-Port aus, an den gebunden werden soll. Wenn der Adapterparameter NULL ist, tritt ein Fehler auf.

Der Von der [BindServiceNameAsync(String, NetworkAdapter)-Methode verwendete Namensauflösungsmechanismus ist auf die angegebene Schnittstelle für den DNS-Namespace (Domain Name System) beschränkt.

Sofern Sie die DatagramSocketControl.MulticastOnly-Eigenschaft nicht verwendet haben, schlägt die BindServiceNameAsync-Methode fehl, wenn eine andere App, die UDP verwendet (z. B. ein anderes DatagramSocket), bereits an den lokalen UDP-Port gebunden wurde, der im localServiceName-Parameter auf derselben Netzwerkschnittstelle angegeben ist.

Die Bindung ist für den Empfang von Daten von jedem Remoteendpunkt auf einem DatagramSocket unerlässlich und erfolgt in der Regel, nachdem ein Socket erstellt und das MessageReceived-Ereignis festgelegt wurde. Die BindServiceNameAsync- oder BindEndpointAsync-Methode wird verwendet, um ein DatagramSocket an einen lokalen Dienstnamen oder UDP-Port zu binden. Die ConnectAsync-Methoden führen auch zu einem Bindungsvorgang, können aber nicht auf einen bestimmten Netzwerkadapter beschränkt werden. Das Schreiben in einen Stream, der von einer der GetOutputStreamAsync-Methoden zurückgegeben wird, führt auch zu einem Bindungsvorgang, wenn der Socket noch nicht gebunden ist, aber nicht auf einen bestimmten Netzwerkadapter beschränkt werden kann.

Die Methoden BindServiceNameAsync und BindEndpointAsync sind in den folgenden Fällen nicht erforderlich:

  • Das DatagramSocket wird nur zum Senden von Daten verwendet.
  • Das DatagramSocket wird verwendet, um Daten an einen einzelnen Endpunkt zu senden und von diesen zu empfangen.

Wenn die [BindServiceNameAsync(String, NetworkAdapter)-Methode verwendet wird, beschränkt der Bindungsvorgang eingehende und ausgehende Multicast- und Unicastpakete auf den angegebenen Adapter.

Die Verwendung des angegebenen Netzwerkadapters erfolgt auf der Grundlage der besten Leistung. Unter anderem können Systeme mit Adaptern, die im Schwachhost- oder Weiterleitungsmodus konfiguriert sind, einen anderen Adapter als den angegebenen Adapter verwenden.

Weitere Informationen

Gilt für: