Partager via


StreamSocket.ConnectAsync Méthode

Définition

Surcharges

ConnectAsync(EndpointPair)

Démarre une opération asynchrone sur un objet StreamSocket pour se connecter à une destination réseau distante spécifiée en tant qu’objet EndpointPair .

ConnectAsync(EndpointPair, SocketProtectionLevel)

Démarre une opération asynchrone sur un objet StreamSocket pour se connecter à une destination réseau distante spécifiée en tant qu’objet EndpointPair et énumération SocketProtectionLevel . Cette méthode n’est pas callable à partir de JavaScript.

ConnectAsync(HostName, String)

Démarre une opération asynchrone sur un objet StreamSocket pour se connecter à une destination réseau distante spécifiée par un nom d’hôte distant et un nom de service distant.

ConnectAsync(HostName, String, SocketProtectionLevel)

Démarre une opération asynchrone sur un objet StreamSocket pour se connecter à une destination distante spécifiée par un nom d’hôte distant, un nom de service distant et un SocketProtectionLevel.

ConnectAsync(HostName, String, SocketProtectionLevel, NetworkAdapter)

Démarre une opération asynchrone sur un objet StreamSocket sur une carte réseau locale spécifiée pour se connecter à une destination distante spécifiée par un nom d’hôte distant, un nom de service distant et un SocketProtectionLevel.

ConnectAsync(EndpointPair)

Démarre une opération asynchrone sur un objet StreamSocket pour se connecter à une destination réseau distante spécifiée en tant qu’objet EndpointPair .

public:
 virtual IAsyncAction ^ ConnectAsync(EndpointPair ^ endpointPair) = ConnectAsync;
/// [Windows.Foundation.Metadata.Overload("ConnectWithEndpointPairAsync")]
IAsyncAction ConnectAsync(EndpointPair const& endpointPair);
[Windows.Foundation.Metadata.Overload("ConnectWithEndpointPairAsync")]
public IAsyncAction ConnectAsync(EndpointPair endpointPair);
function connectAsync(endpointPair)
Public Function ConnectAsync (endpointPair As EndpointPair) As IAsyncAction

Paramètres

endpointPair
EndpointPair

Objet EndpointPair qui spécifie le nom d’hôte local ou l’adresse IP, le nom du service local ou le port TCP, le nom d’hôte distant ou l’adresse IP distante, ainsi que le nom du service distant ou le port TCP distant pour la destination du réseau distant.

Retours

Opération de connexion asynchrone sur un objet StreamSocket .

Attributs

Configuration requise pour Windows

Fonctionnalités de l’application
ID_CAP_NETWORKING [Windows Phone] internetClientServer privateNetworkClientServer

Remarques

Si l’objet EndpointPair passé dans le paramètre endpointPair contient null pour la propriété LocalHostName , le système fournit l’adresse IP locale qui sera utilisée. Si l’objet EndpointPair passé dans le paramètre endpointPair contient une chaîne vide pour la propriété LocalServiceName , le système fournit le port TCP local qui sera utilisé.

Dans une application UWP, la classe StreamSocket prend en charge la connexion à un point de terminaison distant lorsque des proxys sont nécessaires pour terminer la connexion. Cette prise en charge des proxys est automatique et transparente pour l’application. La connexion via des proxys n’est pas prise en charge lorsqu’une adresse d’hôte locale est spécifiée. Par conséquent, la propriété LocalHostName passée dans le paramètre endpointPair doit être null. Pour plus d’informations, consultez les remarques sur la prise en charge des proxys dans la référence de la classe StreamSocket .

Dans une application Windows Phone 8.x, la classe StreamSocket ne fournit pas de prise en charge automatique des proxys.

Voir aussi

S’applique à

ConnectAsync(EndpointPair, SocketProtectionLevel)

Démarre une opération asynchrone sur un objet StreamSocket pour se connecter à une destination réseau distante spécifiée en tant qu’objet EndpointPair et énumération SocketProtectionLevel . Cette méthode n’est pas callable à partir de JavaScript.

public:
 virtual IAsyncAction ^ ConnectAsync(EndpointPair ^ endpointPair, SocketProtectionLevel protectionLevel) = ConnectAsync;
/// [Windows.Foundation.Metadata.Overload("ConnectWithEndpointPairAndProtectionLevelAsync")]
IAsyncAction ConnectAsync(EndpointPair const& endpointPair, SocketProtectionLevel const& protectionLevel);
[Windows.Foundation.Metadata.Overload("ConnectWithEndpointPairAndProtectionLevelAsync")]
public IAsyncAction ConnectAsync(EndpointPair endpointPair, SocketProtectionLevel protectionLevel);
function connectAsync(endpointPair, protectionLevel)
Public Function ConnectAsync (endpointPair As EndpointPair, protectionLevel As SocketProtectionLevel) As IAsyncAction

Paramètres

endpointPair
EndpointPair

Objet EndpointPair qui spécifie le nom d’hôte local ou l’adresse IP, le nom du service local ou le port TCP, le nom d’hôte distant ou l’adresse IP distante, ainsi que le nom du service distant ou le port TCP distant pour la destination du réseau distant.

protectionLevel
SocketProtectionLevel

Niveau de protection qui représente l’intégrité et le chiffrement d’un objet StreamSocket .

Retours

Opération de connexion asynchrone sur un objet StreamSocket .

Attributs

Configuration requise pour Windows

Fonctionnalités de l’application
ID_CAP_NETWORKING [Windows Phone] internetClientServer privateNetworkClientServer

Remarques

Si l’objet EndpointPair passé dans le paramètre endpointPair contient null pour la propriété LocalHostName , le système fournit l’adresse IP locale qui sera utilisée. Si l’objet EndpointPair passé dans le paramètre endpointPair contient une chaîne vide pour la propriété LocalServiceName , le système fournit le port TCP local qui sera utilisé.

Si l’objet EndpointPair passé dans le paramètre endpointPair contient null pour la propriété LocalServiceName , une erreur se produit.

La méthode [ConnectAsync(EndpointPair, SocketProtectionLevel) n’est pas exposée dans JavaScript. Cette méthode ne peut pas être appelée à partir de JavaScript, car elle a le même nombre d’arguments que la méthode ConnectAsync(HostName, String).

Les applications écrites en JavaScript ne peuvent pas connecter un StreamSocket à l’aide d’un EndpointPair à l’aide de SSL directement. Pour connecter un EndpointPair à l’aide de SSL, les applications JavaScript peuvent utiliser le code suivant à la place.

var clientSocket = new Windows.Networking.Sockets.StreamSocket();
var remoteName = new Windows.Networking.HostName("www.contoso.com");
var myEndpointPair = EndpointPair();

// Set properties needed on the EndpointPair
// We only set remote properties and the localServiceName,
// But the localHostName could also be set

myEndpointPair.localServiceName = "12345";
myEndpointPair.remoteHostName = remoteName;
myEndpointPair.remoteServiceName = "http";

// First connect the socket without SSL
clientSocket.connectAsync(myEendpointPair>).then(function () {
    // Now upgrade the connection to SSL
    clientSocket.upgradeToSslAsync(SocketProtectionLevel.Ssl).then(function () {
        // now connected using SSL
    }
}   

Lorsque le paramètre protectionLevel est défini sur une valeur qui nécessite SSL ou TLS, l’opération de connexion de socket peut ne pas expirer si le point de terminaison distant ne prend pas en charge SSL ou TLS. Cela peut se produire si l’opération de connexion initiale réussit, mais que le point de terminaison distant n’arrête pas la connexion pendant la négociation SSL. Pour vous protéger contre cette situation, une application doit définir un délai d’expiration sur l’opération de connexion lors de la demande SSL/TLS et abandonner l’opération si le délai d’expiration expire. Pour plus d’informations sur la définition d’un délai d’expiration à l’aide de JavaScript sur les opérations de socket, consultez Comment définir des délais d’expiration sur les opérations de socket . Pour plus d’informations sur la définition d’un délai d’expiration à l’aide de VB, C# ou C++ sur les opérations de socket, consultez Comment définir des délais d’expiration sur les opérations de socket .

Dans une application UWP, la classe StreamSocket prend en charge la connexion à un point de terminaison distant lorsque des proxys sont nécessaires pour terminer la connexion. Cette prise en charge des proxys est automatique et transparente pour l’application. La connexion via des proxys n’est pas prise en charge lorsqu’une adresse d’hôte locale est spécifiée. Par conséquent, la propriété LocalHostName passée dans le paramètre endpointPair doit être null. Pour plus d’informations, consultez les remarques sur la prise en charge des proxys dans la référence de la classe StreamSocket .

Dans une application Windows Phone 8.x, la classe StreamSocket ne fournit pas de prise en charge automatique des proxys.

Voir aussi

S’applique à

ConnectAsync(HostName, String)

Démarre une opération asynchrone sur un objet StreamSocket pour se connecter à une destination réseau distante spécifiée par un nom d’hôte distant et un nom de service distant.

public:
 virtual IAsyncAction ^ ConnectAsync(HostName ^ remoteHostName, Platform::String ^ remoteServiceName) = ConnectAsync;
/// [Windows.Foundation.Metadata.DefaultOverload]
/// [Windows.Foundation.Metadata.Overload("ConnectAsync")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncAction ConnectAsync(HostName const& remoteHostName, winrt::hstring const& remoteServiceName);
[Windows.Foundation.Metadata.DefaultOverload]
[Windows.Foundation.Metadata.Overload("ConnectAsync")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncAction ConnectAsync(HostName remoteHostName, string remoteServiceName);
function connectAsync(remoteHostName, remoteServiceName)
Public Function ConnectAsync (remoteHostName As HostName, remoteServiceName As String) As IAsyncAction

Paramètres

remoteHostName
HostName

Nom d’hôte ou adresse IP de la destination réseau distante. Pour Bluetooth RFCOMM, il s’agit d’une adresse MAC.

remoteServiceName
String

Platform::String

winrt::hstring

Nom du service ou numéro de port TCP de la destination réseau distante. Pour Bluetooth RFCOMM, il s’agit de l’adresse Bluetooth.

Retours

Opération de connexion asynchrone sur un objet StreamSocket .

Attributs

Configuration requise pour Windows

Fonctionnalités de l’application
ID_CAP_NETWORKING [Windows Phone] internetClientServer privateNetworkClientServer

Remarques

Les paramètres remoteHostName et remoteServiceName doivent être fournis. Si remoteHostName a la valeur null ou si remoteServiceName a la valeur null ou une chaîne vide, une erreur se produit.

Dans une application UWP, la classe StreamSocket prend en charge la connexion à un point de terminaison distant lorsque des proxys sont nécessaires pour terminer la connexion. Cette prise en charge des proxys est automatique et transparente pour l’application. Pour plus d’informations, consultez les remarques sur la prise en charge des proxys dans la référence de la classe StreamSocket .

Dans une application Windows Phone 8.x, la classe StreamSocket ne fournit pas de prise en charge automatique des proxys.

Voir aussi

S’applique à

ConnectAsync(HostName, String, SocketProtectionLevel)

Démarre une opération asynchrone sur un objet StreamSocket pour se connecter à une destination distante spécifiée par un nom d’hôte distant, un nom de service distant et un SocketProtectionLevel.

public:
 virtual IAsyncAction ^ ConnectAsync(HostName ^ remoteHostName, Platform::String ^ remoteServiceName, SocketProtectionLevel protectionLevel) = ConnectAsync;
/// [Windows.Foundation.Metadata.Overload("ConnectWithProtectionLevelAsync")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncAction ConnectAsync(HostName const& remoteHostName, winrt::hstring const& remoteServiceName, SocketProtectionLevel const& protectionLevel);
[Windows.Foundation.Metadata.Overload("ConnectWithProtectionLevelAsync")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncAction ConnectAsync(HostName remoteHostName, string remoteServiceName, SocketProtectionLevel protectionLevel);
function connectAsync(remoteHostName, remoteServiceName, protectionLevel)
Public Function ConnectAsync (remoteHostName As HostName, remoteServiceName As String, protectionLevel As SocketProtectionLevel) As IAsyncAction

Paramètres

remoteHostName
HostName

Nom d’hôte ou adresse IP de la destination réseau distante. Pour Bluetooth RFCOMM, il s’agit d’une adresse MAC.

remoteServiceName
String

Platform::String

winrt::hstring

Nom du service ou numéro de port TCP de la destination réseau distante. Pour Bluetooth RFCOMM, il s’agit de l’adresse Bluetooth.

protectionLevel
SocketProtectionLevel

Niveau de protection qui représente l’intégrité et le chiffrement de l’objet StreamSocket .

Retours

Opération de connexion asynchrone sur un objet StreamSocket .

Attributs

Configuration requise pour Windows

Fonctionnalités de l’application
ID_CAP_NETWORKING [Windows Phone] internetClientServer privateNetworkClientServer

Remarques

Les paramètres remoteHostName et remoteServiceName doivent être fournis. Si remoteHostName a la valeur null ou si remoteServiceName a la valeur null ou une chaîne vide, une erreur se produit.

Lorsque le paramètre protectionLevel est défini sur une valeur qui nécessite SSL ou TLS, l’opération de connexion de socket peut ne pas expirer si la destination réseau distante ne prend pas en charge SSL ou TLS. Cela peut se produire si l’opération de connexion initiale réussit, mais que l’hôte distant n’arrête pas la connexion pendant la négociation SSL. Pour vous protéger contre cette situation, une application doit définir un délai d’expiration sur l’opération de connexion lors de la demande SSL/TLS et abandonner l’opération si le délai d’expiration expire. Pour plus d’informations sur la définition d’un délai d’expiration à l’aide de JavaScript sur les opérations de socket, consultez Comment définir des délais d’expiration sur les opérations de socket . Pour plus d’informations sur la définition d’un délai d’expiration à l’aide de VB, C# ou C++ sur les opérations de socket, consultez Comment définir des délais d’expiration sur les opérations de socket .

Dans une application UWP, la classe StreamSocket prend en charge la connexion à un point de terminaison distant lorsque des proxys sont nécessaires pour terminer la connexion. Cette prise en charge des proxys est automatique et transparente pour l’application. Pour plus d’informations, consultez les remarques sur la prise en charge des proxys dans la référence de la classe StreamSocket .

Dans une application Windows Phone 8.x, la classe StreamSocket ne fournit pas de prise en charge automatique des proxys.

Voir aussi

S’applique à

ConnectAsync(HostName, String, SocketProtectionLevel, NetworkAdapter)

Démarre une opération asynchrone sur un objet StreamSocket sur une carte réseau locale spécifiée pour se connecter à une destination distante spécifiée par un nom d’hôte distant, un nom de service distant et un SocketProtectionLevel.

public:
 virtual IAsyncAction ^ ConnectAsync(HostName ^ remoteHostName, Platform::String ^ remoteServiceName, SocketProtectionLevel protectionLevel, NetworkAdapter ^ adapter) = ConnectAsync;
/// [Windows.Foundation.Metadata.Overload("ConnectWithProtectionLevelAndAdapterAsync")]
/// [Windows.Foundation.Metadata.RemoteAsync]
IAsyncAction ConnectAsync(HostName const& remoteHostName, winrt::hstring const& remoteServiceName, SocketProtectionLevel const& protectionLevel, NetworkAdapter const& adapter);
[Windows.Foundation.Metadata.Overload("ConnectWithProtectionLevelAndAdapterAsync")]
[Windows.Foundation.Metadata.RemoteAsync]
public IAsyncAction ConnectAsync(HostName remoteHostName, string remoteServiceName, SocketProtectionLevel protectionLevel, NetworkAdapter adapter);
function connectAsync(remoteHostName, remoteServiceName, protectionLevel, adapter)
Public Function ConnectAsync (remoteHostName As HostName, remoteServiceName As String, protectionLevel As SocketProtectionLevel, adapter As NetworkAdapter) As IAsyncAction

Paramètres

remoteHostName
HostName

Nom d’hôte ou adresse IP de la destination réseau distante. Pour Bluetooth RFCOMM, il s’agit d’une adresse MAC.

remoteServiceName
String

Platform::String

winrt::hstring

Nom du service ou numéro de port TCP de la destination réseau distante. Pour Bluetooth RFCOMM, il s’agit de l’adresse Bluetooth.

protectionLevel
SocketProtectionLevel

Niveau de protection qui représente l’intégrité et le chiffrement de l’objet StreamSocket .

adapter
NetworkAdapter

Carte réseau locale à utiliser pour l’opération de connexion sur l’objet StreamSocket .

Retours

Opération de connexion asynchrone sur un objet StreamSocket .

Attributs

Remarques

La méthode [ConnectAsync(Hostname, String, SocketProtectionLevel, NetworkAdapter) est liée à une interface réseau spécifiée dans le paramètre d’adaptateur sur l’ordinateur local et au nom d’hôte et de service distant spécifiés dans les paramètres remoteHostName et remoteServiceName avec le niveau de protection spécifié dans le paramètre protectionLevel .

Les paramètres remoteHostName et remoteServiceName doivent être fournis. Si remoteHostName a la valeur null ou si remoteServiceName a la valeur null ou une chaîne vide, une erreur se produit. Si le paramètre de l’adaptateur est null, une erreur se produit.

Le mécanisme de résolution de noms utilisé par la méthode [ConnectAsync(Hostname, String, SocketProtectionLevel, NetworkAdapter) est limité à l’interface spécifiée pour l’espace de noms DNS (Domain Name System).

L’utilisation de la carte réseau spécifiée s’effectue au mieux. Les systèmes avec des cartes configurées en mode hôte faible ou de transfert peuvent utiliser une carte autre que l’adaptateur spécifié.

Lorsque le paramètre protectionLevel est défini sur une valeur qui nécessite SSL ou TLS, l’opération de connexion de socket peut ne pas expirer si la destination réseau distante ne prend pas en charge SSL ou TLS. Cela peut se produire si l’opération de connexion initiale réussit, mais que l’hôte distant n’arrête pas la connexion pendant la négociation SSL. Pour vous protéger contre cette situation, une application doit définir un délai d’attente sur l’opération de connexion lors de la demande SSL/TLS et abandonner l’opération si le délai d’expiration expire. Pour plus d’informations sur la définition d’un délai d’expiration à l’aide de JavaScript sur les opérations de socket, consultez Comment définir des délais d’expiration sur les opérations de socket . Pour plus d’informations sur la définition d’un délai d’expiration à l’aide de VB, C# ou C++ sur les opérations de socket, consultez Comment définir des délais d’expiration sur les opérations de socket .

Une application peut récupérer un NetworkAdapter valide en inspectant un instance HostName (à l’aide de la méthode NetworkInformation.GetHostNames, par exemple) et en récupérant l’objet IPInformation à partir de la propriété Hostname.IPInformation. La propriété IPInformation.NetworkAdapter peut être utilisée pour récupérer le NetworkAdapter associé.

Dans une application UWP, la classe StreamSocket prend en charge la connexion à un point de terminaison distant lorsque des proxys sont nécessaires pour terminer la connexion. Cette prise en charge des proxys est automatique et transparente pour l’application. Toutefois, la connexion via des proxys n’est pas prise en charge lorsqu’une carte réseau spécifique est sélectionnée. La prise en charge du proxy est donc désactivée lorsque la méthode [ConnectAsync(HostName, String, SocketProtectionLevel, NetworkAdapter) est utilisée. Pour plus d’informations, consultez les remarques sur la prise en charge des proxys dans la référence de la classe StreamSocket .

Dans une application Windows Phone 8.x, la classe StreamSocket ne fournit pas de prise en charge automatique des proxys.

Voir aussi

S’applique à