Windows.Networking.Sockets Namespace

Stellt Sockets- und WebSockets-Klassen zur Verwendung für die Netzwerkkommunikation und Klassen für Echtzeitnetzwerkbenachrichtigungen bereit, die im Hintergrund für Windows Store-Apps empfangen werden.

Member

Windows.Networking.SocketsNamespace hat diese Membertypen:

Klassen

Windows.Networking.SocketsNamespace hat diese Klassen.

KlasseBeschreibung
ControlChannelTrigger Enables real time notifications to be received in the background for class elements in the Windows.Networking.Sockets namespace and other networking transports.
DatagramSocket Supports network communication using a UDP datagram socket.
DatagramSocketControl Provides socket control data on a DatagramSocket object.
DatagramSocketInformation Provides socket information on a DatagramSocket object.
DatagramSocketMessageReceivedEventArgs Provides data for a MessageReceived event on a DatagramSocket.
MessageWebSocket Supports network communication that allows reading and writing whole messages using a WebSocket.
MessageWebSocketControl Provides socket control data on a MessageWebSocket.
MessageWebSocketInformation Provides socket information on a MessageWebSocket.
MessageWebSocketMessageReceivedEventArgs Provides data for a message received event on a MessageWebSocket.
SocketError Provides socket error status for operations on a DatagramSocket, StreamSocket, or StreamSocketListener.
StreamSocket Supports network communication using a stream socket over TCP or Bluetooth RFCOMM.
StreamSocketControl Provides socket control data on a StreamSocket object.
StreamSocketInformation Provides socket information on a StreamSocket object.
StreamSocketListener Supports listening for an incoming network connection using a TCP stream socket or Bluetooth RFCOMM.
StreamSocketListenerConnectionReceivedEventArgs Provides data for a ConnectionReceived event on a StreamSocketListener object.
StreamSocketListenerControl Provides socket control data on a StreamSocketListener object.
StreamSocketListenerInformation Provides socket information on a StreamSocketListener object.
StreamWebSocket Supports network communication that allows reading and writing streams using a WebSocket.
StreamWebSocketControl Provides socket control data on a StreamWebSocket object.
StreamWebSocketInformation Provides socket information on a StreamWebSocket object.
WebSocketClosedEventArgs Provides data for a closed event on a MessageWebSocket, StreamWebSocket, or IWebSocket object.
WebSocketError Provides socket error status on a MessageWebSocket or StreamWebSocket object.
WebSocketKeepAlive Provides the ability to send a WebSocket protocol keep-alive on a connected WebSocket.

 

Enumerationen

Windows.Networking.SocketsNamespace verfügt über folgende Enumerationen.

EnumerationBeschreibung
ControlChannelTriggerResetReason The reason why a ControlChannelTrigger was reset.
ControlChannelTriggerResourceType The resource type used by a control channel trigger.
ControlChannelTriggerStatus Specifies if the system was able to complete configuration of a ControlChannelTrigger object for use by class elements in the Windows.Networking.Sockets and related namespaces.
SocketErrorStatus Specifies status values for a socket operation.
SocketMessageType Specifies the type of a message for a MessageWebSocket object.
SocketProtectionLevel Specifies the level of encryption to use on a StreamSocket object.
SocketQualityOfService Specifies the quality of service for a DatagramSocket or StreamSocket object.
SocketSslErrorSeverity The category of error that occurs on an SSL connection.

 

Schnittstellen

Windows.Networking.SocketsNamespace definiert diese Schnittstellen.

SchnittstelleBeschreibung
IControlChannelTriggerEventDetails An object instantiated by the background broker infrastructure that is used to differentiate control channel triggers.
IControlChannelTriggerResetEventDetails An object instantiated by the background broker infrastructure for a ControlChannelReset event to indicate that a ControlChannelTrigger was reset.
IWebSocket Provides access to network communication that allows reading and writing using a WebSocket.
IWebSocketControl Provides socket control data on an IWebSocket object.
IWebSocketInformation Provides socket information on an IWebSocket object.

 

Strukturen

Windows.Networking.SocketsNamespace hat diese Strukturen.

StrukturBeschreibung
BandwidthStatistics Represents bandwidth information for network data transfer using a StreamSocket, StreamWebSocket, or MessageWebSocket object.
RoundTripTimeStatistics Represents round trip time information for a StreamSocket object.

 

Hinweise

Der Windows.Networking.Sockets-Namespace stellt Klassen und Schnittstellen für das Netzwerk bereit, die Sockets und WebSockets verwenden. Die primären Klassen umfassen:

  • DatagramSocket: Ein UDP-Datagrammsocket für Netzwerkkommunikation.
  • StreamSocket - Ein Streamsocket, der für die eingehende oder ausgehende Netzwerkkommunikation über TCP oder über Bluetooth-Verbindungen, die RFCOMM verwenden, verwendet wird.
  • StreamSocketListener - Ein Streamsocketlistener, der eingehende TCP-Netzwerkverbindungen oder eingehende Bluetooth-Verbindungen, die RFCOMM verwenden, überwacht.
  • MessageWebSocket - Ein meldungsbasiertes WebSocket zum Lesen und Schreiben ganzer Nachrichten zur Kommunikation im Netzwerk.
  • StreamWebSocket - Ein streambasierter WebSocket zum Lesen von Schreiben von Streams für die Netzwerkkommunikationen.

Diese primären Klassen besitzen auch eine Anzahl zugehöriger Informations- und Steuerelementklassen im Windows.Networking.Sockets-Namespace.

Behandeln von Ausnahmen

Sie müssen Code zum Behandeln von Ausnahmen schreiben, wenn Sie asynchrone Methoden im Windows.Networking.Sockets-Namespace aufrufen. Ausnahmen können durch Parametervalidierungsfehler, Namensauflösungsfehler und Netzwerkfehler ausgelöst werden. Ausnahmen durch Netzwerkfehler (beispielsweise Verlust der Konnektivität, Verbindungsfehler und Serverfehler) können jederzeit vorkommen. Durch diese Fehler werden Ausnahmen ausgelöst. Wenn sie nicht von der Anwendung verarbeitet wird, kann eine Ausnahme bewirken, dass die gesamte App von der Laufzeit beendet wird.

Der Windows.Networking.Sockets-Namespace hat bequeme Hilfsmethoden und Enumerationen für die Fehlerbehandlung bei Verwendung von Sockets und WebSockets. Dies kann für eine alternative Behandlung bestimmter Netzwerkausnahmen in der App hilfreich sein. Eine App kann auch das HRESULT aus der Ausnahme bei Parametervalidierungsfehlern verwenden, um ausführlichere Informationen über den Fehler zu erhalten, der die Ausnahme ausgelöst hat.

Weitere Informationen über mögliche Ausnahmen und deren Behandlung finden Sie unter Behandeln von Ausnahmen in Netzwerk-Apps.

Verwenden von StreamSocket mit Bluetooth und Wi-Fi Direct

Ihre App kann auch einen StreamSocket für Netzwerkverbindungen zwischen Geräten verwenden, die sich in der Nähe befinden. Klassen im Windows.Networking.Proximity-Namespace unterstützen Netzwerkverbindungen mit einem StreamSocket, der RFCOMM oder Wi-Fi Direct für nahe gelegenen Geräten verwendet. Der PeerFinder und verwandte Klassen im Windows.Networking.Proximity-Namespace ermöglichen der App, eine andere Instanz Ihrer App auf einem nahe gelegenen Gerät zu ermitteln. Ihre App kann mit einer Tippbewegung oder über Durchsuchen eine StreamSocket-Verbindung mit der nahe gelegenen Peer-App herstellen. Weitere Informationen finden Sie unter Unterstützung von Näherung und Tippen, Windows.Networking.Proximity, PeerFinder, Windows.Devices.Bluetooth.Rfcomm, Näherungsbeispiel und Bluetooth Rfcomm-Chatbeispiel.

Verwenden von Netzwerk-Triggern

Der Windows.Networking.Sockets-Namespace enthält außerdem eine Klasse für Netzwerksteuerungskanalauslöser zur Verwendung für Hintergrundnetzwerkfunktionen. Mit dem ControlChannelTrigger kann die App Netzwerkdatenpakete und Netzwerk-Keep-Alives empfangen, wenn die App im Hintergrund ist. Dadurch kann die App Echtzeitstatus und Netzwerkbenachrichtigungen für StreamSocket im Windows.Networking.Sockets-Namespace und anderen Netzwerkklassen in zugehörigen Namespaces bereitstellen.

Netzwerktrigger werden von ständig ausgeführten Apps (beispielsweise einer App für E-Mail) verwendet, um Netzwerk- und Systemressourcen zu sparen. Netzwerktrigger erlauben einer App, zeitweise in einen Stromsparmodus umzuschalten, ohne dabei vorhandene Netzwerkverbindungen zu unterbrechen. Sie können ein Keep-Alive-Intervall festlegen, um dem System mitzuteilen, wann die Anwendung aktiviert werden soll. Sie können auch einen Trigger festlegen, um benachrichtigt zu werden, wenn ein Paket für die Anwendung empfangen wird. Beim Verwenden von Netzwerk-Apps mit langer Laufzeit auf Mobilgeräten können diese Benachrichtigungsfunktionen helfen, die Akkulaufzeit zu verlängern.

Weitere Informationen finden Sie in Artikeln zur ControlChannelTrigger-Klasse und unter So wird's gemacht: Festlegen von Optionen für Hintergrundkonnektivität.

Verwenden von Sockets und WebSockets unter Windows Server 2012

Unter Windows Server 2012 und Windows Server 2012 R2 kann die Windows.Networking.dll, welche die meisten Klassen aus dem Windows.Networking.Sockets-Namespace implementiert, nur geladen werden, wenn die Media Foundation-Funktion aktiviert ist. Apps, die Sockets- oder WebSockets-Klassen im Windows.Networking.Sockets-Namespace verwenden, scheitern daher, wenn die Media Foundation-Funktion deaktiviert ist. Windows Server 2012 oder Windows Server 2012 R2 wird mit deaktivierter Media Foundations-Funktion installiert.

Die Media Foundation-Funktion kann unter Windows Server 2012 oder Windows Server 2012 R2 mithilfe des Server-Managers oder durch Eingabe des folgenden Texts in eine Eingabeaufforderung oder in ein Skript aktiviert werden.

dism /online /enable-feature /featurename:ServerMediaFoundation

Nach dem Aktivieren der Media Foundation-Funktion wird der Benutzer aufgefordert, einen Neustart auszuführen. Nachdem der Computer neu gestartet wurde, wenden die Klassen für Sockets und WebSockets aus dem Windows.Networking.Sockets-Namespace wie erwartet arbeiten.

Verwenden von Sockets und WebSockets mit Netzwerkisolation

Mit der Netzwerkisolation in Windows 8 können Sie das Sicherheitsprofil einer Windows Store-App vollständig steuern.

Mit der Netzwerkisolation können Sie den für jede App erforderlichen Netzwerkzugriff definieren, indem Sie die entsprechenden Funktionen auswählen. Eine App, für die nicht die entsprechenden Funktionen festgelegt werden, wird daran gehindert, bestimmte Netzwerktypen (Internet oder Heimnetzwerk/Arbeitsplatznetzwerk) und bestimmte Netzwerkanforderungen zu verwenden (Client-initiierte ausgehende Anforderungen oder unverlangte eingehende Anforderungen und ausgehende Client-initiierte Anforderungen). Die Fähigkeit zum Erzwingen der Netzwerkisolation stellt sicher, dass eine App selbst bei beeinträchtigter Sicherheit nur Funktionen (z. B. Netzwerktypen und Netzwerkanforderungen) verwenden kann, dir ihr zugestanden wurden. Hierdurch werden die möglichen Auswirkungen auf andere Apps im Betriebssystem deutlich reduziert.

Unter Windows 8 wird eine Netzwerkisolation erzwungen. Ein Aufruf einer Methode oder ein Zugriff auf eine Eigenschaft im Windows.Networking.Sockets-Namespace (oder in den verknüpften Namespaces, die Netzwerkzugriff erfordern), schlagen möglicherweise fehl, wenn die entsprechende Netzwerkfunktion nicht aktiviert ist.

Die Netzwerkfunktionen für eine App werden im App-Manifest konfiguriert, wenn die App erstellt wird. Netzwerkfunktionen werden üblicherweise mit Visual Studio bei der Entwicklung Ihrer App hinzugefügt. Sie können auch manuell mit einem Texteditor in das App-Manifest eingefügt werden.

Ausführlichere Informationen zur Netzwerkisolation finden Sie unter Konfigurieren von Netzwerkisolationsfunktionen.

Anforderungen

Mindestens unterstützter Client

Windows 8

Mindestens unterstützter Server

Windows Server 2012

Mindestens unterstütztes Telefon

Windows Phone 8

Namespace

Windows.Networking.Sockets
Windows::Networking::Sockets [C++]

Metadaten

Windows.winmd

DLL

Windows.Networking.dll;
Windows.Networking.Sockets.Pushenabledapplication.dll

Capabilities

ID_CAP_NETWORKING [Windows Phone]

Siehe auch

Weitere Ressourcen
Hinzufügen von Unterstützung für Netzwerk
Herstellen der Verbindung zu Netzwerkdiensten
Verbindung mit einem WebSocket-Dienst
Behandeln von Ausnahmen in Netzwerk-Apps
Konfigurieren von Netzwerkisolationsfunktionen
Festlegen von Hintergrundkonnektivitätsoptionen
Unterstützung von Näherung und Kopplung
Problembehandlung und Debuggen von Netzwerkverbindungen
Verweis
PeerFinder
SetSocketMediaStreamingMode
Windows.Devices.Bluetooth.Rfcomm
Windows.Networking Namespace
Windows.Networking.Connectivity Namespace
Windows.Networking.Proximity
Beispiele
Bluetooth Rfcomm-Chatbeispiel
DatagramSocket-Beispiel
Beispiel für Verbinden mit WebSockets
Beispiel ControlChannelTrigger TCP-Socket
Nähebeispiel
StreamSocket-Beispiel

 

 

Anzeigen:
© 2014 Microsoft. Alle Rechte vorbehalten.