StreamSocket.ConnectAsync Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Перегрузки
| Имя. | Описание |
|---|---|
| ConnectAsync(EndpointPair) |
Запускает асинхронную операцию в объекте streamSocket |
| ConnectAsync(EndpointPair, SocketProtectionLevel) |
Запускает асинхронную операцию в объекте StreamSocket |
| ConnectAsync(HostName, String) |
Запускает асинхронную операцию в объекте StreamSocket для подключения к удаленному назначению сети, заданному именем удаленного узла и именем удаленной службы. |
| ConnectAsync(HostName, String, SocketProtectionLevel) |
Запускает асинхронную операцию в объекте streamSocket для подключения к удаленному назначению, указанному именем удаленного узла, именем удаленной службы и SocketProtectionLevel. |
| ConnectAsync(HostName, String, SocketProtectionLevel, NetworkAdapter) |
Запускает асинхронную операцию для объекта StreamSocket на указанном локальном сетевом адаптере для подключения к удаленному назначению, указанному именем удаленного узла, именем удаленной службы и SocketProtectionLevel. |
ConnectAsync(EndpointPair)
Запускает асинхронную операцию в объекте streamSocket
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
Параметры
- endpointPair
- EndpointPair
Объект EndpointPair, указывающий имя локального узла или IP-адрес, имя локальной службы или TCP-порт, имя удаленного узла или удаленный IP-адрес, а также имя удаленной службы или удаленный TCP-порт для назначения удаленной сети.
Возвращаемое значение
Асинхронная операция подключения к объекту StreamSocket
- Атрибуты
Требования к Windows
| Требования | Описание |
|---|---|
| Возможности приложения |
internetClientServer
privateNetworkClientServer
|
Комментарии
Если объект EndpointPair, переданный в параметре endpointPair содержит значение NULL для свойства LocalHostName, система будет предоставлять локальный IP-адрес, который будет использоваться. Если объект endpointPair
В приложении UWP класс StreamSocket
См. также
- ConnectAsync(HostName, String)
- ConnectAsync(EndpointPair, SocketProtectionLevel)
- ConnectAsync(HostName, String, SocketProtectionLevel)
- ConnectAsync(HostName, String, SocketProtectionLevel, NetworkAdapter)
- EndpointPair
- Настройка времени ожидания для операций сокета
- Настройка времени ожидания для операций сокета
Применяется к
ConnectAsync(EndpointPair, SocketProtectionLevel)
Запускает асинхронную операцию в объекте StreamSocket
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
Параметры
- endpointPair
- EndpointPair
Объект EndpointPair, указывающий имя локального узла или IP-адрес, имя локальной службы или TCP-порт, имя удаленного узла или удаленный IP-адрес, а также имя удаленной службы или удаленный TCP-порт для удаленного назначения сети.
- protectionLevel
- SocketProtectionLevel
Уровень защиты, представляющий целостность и шифрование объекта StreamSocket.
Возвращаемое значение
Асинхронная операция подключения к объекту StreamSocket
- Атрибуты
Требования к Windows
| Требования | Описание |
|---|---|
| Возможности приложения |
internetClientServer
privateNetworkClientServer
|
Комментарии
Если объект EndpointPair, переданный в параметре endpointPair содержит значение NULL для свойства LocalHostName, система будет предоставлять локальный IP-адрес, который будет использоваться. Если объект endpointPair
Если объект endpointPair
Метод [ConnectAsync(EndpointPair, SocketProtectionLevel) не предоставляется в JavaScript. Этот метод нельзя вызвать из JavaScript, так как он имеет то же количество аргументов, что и метод ConnectAsync(HostName, String).
Приложения, написанные на JavaScript, не могут подключать StreamSocket с помощью EndpointPair с помощью SSL напрямую. Чтобы подключить EndpointPair с помощью SSL, приложения JavaScript могут использовать следующий код.
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
}
}
Если параметр protectionLevel имеет значение, требующее SSL или TLS, операция подключения сокета может не истекать, если удаленная конечная точка не поддерживает ПРОТОКОЛ SSL или TLS. Это может произойти, если начальная операция подключения завершается успешно, но удаленная конечная точка не завершает подключение во время подтверждения SSL. Чтобы защититься от этой ситуации, приложение должно задать время ожидания для операции подключения при запросе SSL/TLS и прервать операцию, если истекает время ожидания. Дополнительные сведения о настройке времени ожидания с помощью JavaScript для операций сокета см. в статье Настройка времени ожидания для операций сокета . Дополнительные сведения о настройке времени ожидания с помощью VB, C#или C++ в операциях сокета см. в разделе Настройка времени ожидания для операций сокета .
В приложении UWP класс StreamSocket
См. также
- ConnectAsync(EndpointPair)
- ConnectAsync(HostName, String)
- ConnectAsync(HostName, String, SocketProtectionLevel)
- ConnectAsync(HostName, String, SocketProtectionLevel, NetworkAdapter)
- EndpointPair
- SocketProtectionLevel
- Настройка времени ожидания для операций сокета
- Настройка времени ожидания для операций сокета
Применяется к
ConnectAsync(HostName, String)
Запускает асинхронную операцию в объекте StreamSocket для подключения к удаленному назначению сети, заданному именем удаленного узла и именем удаленной службы.
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
Параметры
- remoteHostName
- HostName
Имя узла или IP-адрес назначения удаленной сети. Для Bluetooth RFCOMM это MAC-адрес.
- remoteServiceName
-
String
Platform::String
winrt::hstring
Имя службы или номер TCP-порта для назначения удаленной сети. Для Bluetooth RFCOMM это адрес Bluetooth.
Возвращаемое значение
Асинхронная операция подключения к объекту StreamSocket
- Атрибуты
Требования к Windows
| Требования | Описание |
|---|---|
| Возможности приложения |
internetClientServer
privateNetworkClientServer
|
Комментарии
Необходимо указать параметры remoteHostName
В приложении UWP класс StreamSocket
См. также
- ConnectAsync(EndpointPair)
- ConnectAsync(EndpointPair, SocketProtectionLevel)
- ConnectAsync(HostName, String, SocketProtectionLevel)
- ConnectAsync(HostName, String, SocketProtectionLevel, NetworkAdapter)
- HostName
- Настройка времени ожидания для операций сокета
- Настройка времени ожидания для операций сокета
Применяется к
ConnectAsync(HostName, String, SocketProtectionLevel)
Запускает асинхронную операцию в объекте streamSocket для подключения к удаленному назначению, указанному именем удаленного узла, именем удаленной службы и 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
Параметры
- remoteHostName
- HostName
Имя узла или IP-адрес назначения удаленной сети. Для Bluetooth RFCOMM это MAC-адрес.
- remoteServiceName
-
String
Platform::String
winrt::hstring
Имя службы или номер TCP-порта для назначения удаленной сети. Для Bluetooth RFCOMM это адрес Bluetooth.
- protectionLevel
- SocketProtectionLevel
Уровень защиты, представляющий целостность и шифрование объекта StreamSocket.
Возвращаемое значение
Асинхронная операция подключения к объекту StreamSocket
- Атрибуты
Требования к Windows
| Требования | Описание |
|---|---|
| Возможности приложения |
internetClientServer
privateNetworkClientServer
|
Комментарии
Необходимо указать параметры remoteHostName
Если параметр protectionLevel имеет значение, требующее SSL или TLS, операция подключения сокета может не истекать, если назначение удаленной сети не поддерживает ПРОТОКОЛ SSL или TLS. Это может произойти, если начальная операция подключения завершается успешно, но удаленный узел не завершает подключение во время подтверждения SSL. Чтобы защититься от этой ситуации, приложение должно задать время ожидания для операции подключения при запросе SSL/TLS и прервать операцию, если истекает время ожидания. Дополнительные сведения о настройке времени ожидания с помощью JavaScript для операций сокета см. в статье Настройка времени ожидания для операций сокета . Дополнительные сведения о настройке времени ожидания с помощью VB, C#или C++ в операциях сокета см. в разделе Настройка времени ожидания для операций сокета .
В приложении UWP класс StreamSocket
См. также
- ConnectAsync(EndpointPair)
- ConnectAsync(HostName, String)
- ConnectAsync(EndpointPair, SocketProtectionLevel)
- ConnectAsync(HostName, String, SocketProtectionLevel, NetworkAdapter)
- HostName
- SocketProtectionLevel
- Настройка времени ожидания для операций сокета
- Настройка времени ожидания для операций сокета
Применяется к
ConnectAsync(HostName, String, SocketProtectionLevel, NetworkAdapter)
Запускает асинхронную операцию для объекта StreamSocket на указанном локальном сетевом адаптере для подключения к удаленному назначению, указанному именем удаленного узла, именем удаленной службы и 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
Параметры
- remoteHostName
- HostName
Имя узла или IP-адрес назначения удаленной сети. Для Bluetooth RFCOMM это MAC-адрес.
- remoteServiceName
-
String
Platform::String
winrt::hstring
Имя службы или номер TCP-порта для назначения удаленной сети. Для Bluetooth RFCOMM это адрес Bluetooth.
- protectionLevel
- SocketProtectionLevel
Уровень защиты, представляющий целостность и шифрование объекта StreamSocket.
- adapter
- NetworkAdapter
Локальный сетевой адаптер, используемый для операции подключения в объекте StreamSocket.
Возвращаемое значение
Асинхронная операция подключения к объекту StreamSocket
- Атрибуты
Комментарии
Метод [ConnectAsync(Host name, String, SocketProtectionLevel, NetworkAdapter) привязывается к сетевому интерфейсу, указанному в параметре адаптера
Необходимо указать параметры remoteHostName
Механизм разрешения имен, используемый методом [ConnectAsync(Hostname, String, SocketProtectionLevel, NetworkAdapter), ограничен указанным интерфейсом для пространства имен системы доменных имен (DNS).
Использование указанного сетевого адаптера осуществляется на основе наилучших усилий. Системы с адаптерами, настроенными в режимах слабого узла или пересылки, могут использовать адаптер, отличный от указанного адаптера.
Если параметр protectionLevel имеет значение, требующее SSL или TLS, операция подключения сокета может не истекать, если назначение удаленной сети не поддерживает ПРОТОКОЛ SSL или TLS. Это может произойти, если начальная операция подключения завершается успешно, но удаленный узел не завершает подключение во время подтверждения SSL. Чтобы защититься от этой ситуации, приложение должно задать время ожидания для операции подключения при запросе SSL/TLS и прервать операцию, если истекает время ожидания. Дополнительные сведения о настройке времени ожидания с помощью JavaScript для операций сокета см. в статье Настройка времени ожидания для операций сокета . Дополнительные сведения о настройке времени ожидания с помощью VB, C#или C++ в операциях сокета см. в разделе Настройка времени ожидания для операций сокета .
Приложение может получить допустимый
В приложении UWP класс StreamSocket
См. также
- ConnectAsync(EndpointPair)
- ConnectAsync(HostName, String)
- ConnectAsync(EndpointPair, SocketProtectionLevel)
- ConnectAsync(HostName, String, SocketProtectionLevel)
- IPInformation
- NetworkAdapter
- Настройка времени ожидания для операций сокета
- Настройка времени ожидания для операций сокета