Windows.Networking.Sockets
TOC
Réduire la table des matières
Développer la table des matières

Windows.Networking.Sockets Namespace

Fournit des sockets et des classes WebSockets à utiliser pour les communications réseau, ainsi que des classes pour les notifications réseau en temps réel, reçues en arrière-plan pour les applications du Windows Store.

Membres

Windows.Networking.SocketsEspace de noms possède ces types de membres :

Classes

Windows.Networking.SocketsEspace de noms possède ces classes.

ClasseDescription
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.

 

Énumérations

Windows.Networking.SocketsEspace de noms possède ces énumérations.

ÉnumérationDescription
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.

 

Interfaces

Windows.Networking.SocketsEspace de noms définit ces interfaces.

InterfaceDescription
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.

 

Structures

Windows.Networking.SocketsEspace de noms possède ces structures.

StructureDescription
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.

 

Remarques

L'espace de noms Windows.Networking.Sockets fournit des classes et des interfaces pour la mise en réseau qui utilisent des sockets et WebSockets. Les principales classes incluent :

  • DatagramSocket - Socket de datagramme UDP à utiliser pour la communication réseau.
  • StreamSocket - Un socket de flux à utiliser pour la communication réseau entrante ou sortante sur TCP ou sur des connexions Bluetooth qui utilisent RFCOMM.
  • StreamSocketListener - Un écouteur de socket de flux pour écouter les connexions réseau TCP entrantes ou les connexions Bluetooth entrantes qui utilisent RFCOMM.
  • MessageWebSocket : WebSocket basé sur des messages pour lire et écrire les messages entiers pour la communication réseau.
  • StreamWebSocket - Un WebSocket basé sur le flux pour lire et écrire les flux des communications réseau.

Ces classes principales ont également différentes classes de contrôle et d'informations associées dans l'espace de noms Windows.Networking.Sockets.

Gestion des exceptions

Vous devez écrire du code pour gérer les exceptions lorsque vous appelez des méthodes asynchrones dans l'espace de noms Windows.Networking.Sockets. Les exceptions peuvent résulter des erreurs de validation des paramètres, des échecs de résolution de noms et des erreurs de réseau. Les exceptions dues à des erreurs réseau (perte de connectivité, échecs de connexion et échecs du serveur, par exemple) peuvent se produire à tout moment. Ces erreurs provoquent des exceptions levées. Si elle n'est pas gérée par votre application, une exception peut provoquer l'arrêt de votre application entière par le runtime.

L'espace de noms Windows.Networking.Sockets comporte des méthodes et des énumérations d'assistance pratiques pour la gestion des erreurs à l'aide de sockets et de WebSockets. Cela peut être utile pour gérer des exceptions de réseau spécifiques différemment dans votre application. Une application peut également utiliser le HRESULT de l'exception sur les erreurs de validation de paramètre pour en savoir plus sur l'erreur qui a provoqué l'exception.

Pour plus d'informations sur les exceptions possibles et la gestion des exceptions, consultez Gestion des exceptions dans les applications réseau.

Utilisation de StreamSocket avec Bluetooth et WiFi-Direct

Votre application peut également utiliser une classe StreamSocket pour les connexions réseau entre les appareils qui sont dans la plage proche. Les classes de l'espace de noms Windows.Networking.Proximity prennent en charge les connexions réseau à un StreamSocket qui utilise Bluetooth RFCOMM ou Wi-Fi Direct pour se connecter aux périphériques voisins. PeerFinder et les classes associées dans l'espace de noms Windows.Networking.Proximity permettent à votre application de découvrir une autre instance de votre application sur un périphérique voisin. Votre application peut ensuite créer une connexion StreamSocket à l'application homologue proche à l'aide d'un mouvement de frappe ou en naviguant. Pour plus d'informations, consultez Prise en charge de la fonctionnalité de proximité et du geste tactile, Windows.Networking.Proximity, PeerFinder, Windows.Devices.Bluetooth.Rfcomm, l'exemple Proximité, et l'exemple Discussion Rfcomm Bluetooth.

Utilisation des déclencheurs de réseau

L'espace de noms Windows.Networking.Sockets comporte également une classe pour les déclencheurs de canaux de contrôle de réseau à utiliser pour la connexion en arrière-plan. ControlChannelTrigger permet à votre application de recevoir des paquets de données de réseau et le réseau persiste lorsque l'application est en arrière-plan. Cela génère, pour votre application, un état en temps réel et des notifications de réseau pour StreamSocket dans l'espace de noms Windows.Networking.Sockets et d'autres classes de réseau dans les espaces de noms liés.

Les déclencheurs réseau sont utilisés par les applications réseau à durée d'exécution longue (par exemple, une application de messagerie électronique) pour réduire l'utilisation des ressources réseau et système. Les déclencheurs réseau permettent à une application de passer en mode faible consommation pendant de longues périodes tout en conservant intactes les connexions réseau mais dans un état de faible consommation. Vous pouvez définir un intervalle de persistance pour informer le système lorsque l'application doit se réveiller. Vous pouvez également définir un déclencheur pour être averti en cas de réception d'un paquet pour l'application. Ces fonctionnalités de notification peuvent aider à prolonger l'autonomie des batteries lors de l'utilisation d'applications réseau à période d'activité longue sur les appareils mobiles.

Pour plus d'informations, consultez la classe ControlChannelTrigger et Procédure pour définir les options de connectivité en arrière-plan.

Utilisation des sockets et des WebSockets sur Windows Server 2012

Dans Windows Server 2012 et Windows Server 2012 R2, le Windows.Networking.dll qui implémente la plupart des classes dans l'espace de noms Windows.Networking.Sockets ne peut pas se charger tant que la fonctionnalité Media Foundation n'est pas activée. Par conséquent, les applications qui utilisent des classes de sockets et WebSockets dans l'espace de noms Windows.Networking.Sockets échouent si la fonctionnalité Media Foundation est désactivée. La fonctionnalité Media Foundation est désactivée lorsque Windows Server 2012 ou Windows Server 2012 R2 est installée.

La fonctionnalité Media Foundation peut être activée sur Windows Server 2012 ou Windows Server 2012 R2 à l'aide du Gestionnaire de serveur en entrant le texte suivant dans une invite de commandes ou un script :

dism /online /enable-feature /featurename:ServerMediaFoundation

Après avoir activé la fonctionnalité Media Foundation, l'utilisateur est invité à redémarrer le système. Une fois que l'ordinateur est redémarré, les classes pour les sockets et les WebSockets dans l'espace de noms Windows.Networking.Sockets fonctionnent comme prévu.

Utilisation des sockets et des WebSockets avec l'isolement réseau

L'isolement réseau dans Windows 8 vous permet de contrôler entièrement le profil de sécurité d'une application Windows Store.

L'isolement réseau vous permet de définir l'accès réseau nécessaire pour chaque application en choisissant les fonctions appropriées. Une application sans fonctionnalités appropriées définies ne peut pas utiliser de types de réseau spécifiques (Internet ou Réseau domestique/d'entreprise) ni de demandes de réseau spécifiques (demandes clientes sortantes ou demandes non sollicitées entrantes et demandes clientes sortantes). La capacité d'appliquer l'isolement réseau garantit que même si une application est compromise, l'application peut uniquement utiliser les fonctionnalités reçues comme fonctions (types réseau et demandes réseau, par exemple). Cela réduit considérablement l'impact possible sur les autres applications et sur le système d'exploitation.

Windows 8 applique activement l'isolement réseau. Un appel à une méthode ou à tout accès à une propriété dans l'espace de noms Windows.Networking.Sockets (ou les espaces de noms associés qui requièrent l'accès réseau) peut échouer si la fonctionnalité appropriée du réseau n'a pas été activée.

Les fonctionnalités de réseau pour une application sont configurées dans le manifeste d'application lorsque l'application est générée. Les fonctionnalités réseau sont généralement ajoutées à l'aide de Visual Studio lorsque vous développez votre application. Elles peuvent également être définies manuellement dans le fichier manifeste de l'application à l'aide d'un éditeur de texte.

Pour plus d'informations sur l'isolement réseau, consultez How to configure network isolation capabilities.

Conditions requises

Client minimal pris en charge

Windows 8

Serveur minimal pris en charge

Windows Server 2012

Téléphone minimal pris en charge

Windows Phone 8

Espace de noms

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

Métadonnées

Windows.winmd

DLL

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

Capabilities

ID_CAP_NETWORKING [Windows Phone]

Voir aussi

Autres ressources
Ajout de la prise en charge des connexions réseau
Connexion aux services réseau
Se connecter à un service de WebSocket
Gestion des exceptions dans les applications réseau
Comment configurer les fonctionnalités d'isolement réseau
Comment définir les options de connectivité d'arrière-plan
Prise en charge de la proximité et du clic
Résolution des problèmes et débogage des connexions réseau
Référence
PeerFinder
SetSocketMediaStreamingMode
Windows.Devices.Bluetooth.Rfcomm
Windows.Networking Namespace
Windows.Networking.Connectivity Namespace
Windows.Networking.Proximity
Exemples
Exemple de discussion Rfcomm Bluetooth
Exemple de DatagramSocket
Connexion à l'exemple de WebSockets
ControlChannelTrigger TCP socket, exemple
Exemple de proximité
Exemple de StreamSocket

 

 

Afficher:
© 2017 Microsoft