StreamSocketControl Clase

Definición

Proporciona datos de control de socket en un objeto StreamSocket .

public ref class StreamSocketControl sealed
/// [Windows.Foundation.Metadata.ContractVersion(Windows.Foundation.UniversalApiContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
class StreamSocketControl final
[Windows.Foundation.Metadata.ContractVersion(typeof(Windows.Foundation.UniversalApiContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
public sealed class StreamSocketControl
Public NotInheritable Class StreamSocketControl
Herencia
Object Platform::Object IInspectable StreamSocketControl
Atributos

Requisitos de Windows

Familia de dispositivos
Windows 10 (se introdujo en la versión 10.0.10240.0)
API contract
Windows.Foundation.UniversalApiContract (se introdujo en la versión v1.0)
Características de aplicaciones
bluetooth.rfcomm ID_CAP_NETWORKING [Windows Phone]

Comentarios

La clase StreamSocketControl proporciona acceso a datos de control de socket avanzados en un objeto StreamSocket .

Un objeto StreamSocketControl se crea automáticamente con el objeto Primario StreamSocket . La propiedad StreamSocket.Control proporciona acceso al objeto StreamSocketControl asociado.

Los cambios realizados en los valores de propiedad de StreamSocketControl deben establecerse antes de que streamSocket esté conectado. Como resultado, si necesita realizar cambios en las propiedades ClientCertificate, IgnorableServerCertificateErrors, KeepAlive, NoDelay, OutboundBufferSizeInBytes , OutboundUnicastHopLimit o QualityOfService , estos cambios deben producirse antes de una llamada correcta a uno de los métodos ConnectAsync en StreamSocket.

Use ClientCertificate para establecer un certificado de cliente que se usará para realizar conexiones seguras a través del objeto StreamSocket asociado.

En el ejemplo siguiente se crea un objeto StreamSocket y, a continuación, se muestra cómo establecer la propiedad NoDelay en false. Otras propiedades se pueden establecer de forma similar. Una vez hecho esto, la aplicación puede conectar StreamSocket.

using Windows.Networking.Sockets;

StreamSocket clientSocket = new StreamSocket();

// Get the current setting for this option.
// This isn't required, but it shows how to get the current setting.
bool currentSetting = clientSocket.Control.NoDelay;

// Set NoDelay to false so that the Nagle algorithm is not disabled.
clientSocket.Control.NoDelay = false;

// Now you can call the ConnectAsync method to connect the StreamSocket.
#include <winrt/Windows.Networking.Sockets.h>
using namespace winrt;
...
Windows::Networking::Sockets::StreamSocket clientSocket;

// Get the current setting for this option.
// This isn't required, but it shows how to get the current setting.
bool currentSetting{ clientSocket.Control().NoDelay() };

// Set NoDelay to false so that the Nagle algorithm is not disabled.
clientSocket.Control().NoDelay(false);

// Now you can call the ConnectAsync function to connect the StreamSocket.
using namespace Windows::Networking::Sockets;

StreamSocket^ clientSocket = ref new StreamSocket();

// Get the current setting for this option.
// This isn't required, but it shows how to get the current setting.
bool currentSetting = clientSocket->Control->NoDelay;

// Set NoDelay to false so that the Nagle algorithm is not disabled.
clientSocket->Control->NoDelay = false;

// Now you can call the ConnectAsync method to connect the StreamSocket.

Para obtener más información sobre el uso de StreamSocketControl, consulte Uso de controles de socket avanzados.

Historial de versiones

Versión de Windows Versión del SDK Valor agregado
1709 16299 MinProtectionLevel

Propiedades

ClientCertificate

Obtiene o establece el certificado SSL/TLS de cliente que se enviará al servidor si el servidor solicita un certificado de cliente.

IgnorableServerCertificateErrors

Obtenga un vector de errores de servidor SSL que se omitirán al realizar una conexión SSL con streamSocket.

KeepAlive

Valor que indica si los paquetes keep-alive se envían al destino remoto en un objeto StreamSocket .

MinProtectionLevel

Restringe la versión del protocolo TLS que se negociará cuando el desarrollador use los métodos ConnectAsync() o UpgradeToSslAsync() que requieren TLS.

NoDelay

Valor que indica si el algoritmo nagle se usa en un objeto StreamSocket .

OutboundBufferSizeInBytes

Tamaño, en bytes, del búfer de envío que se va a usar para enviar datos en un objeto StreamSocket .

OutboundUnicastHopLimit

Límite de salto en un paquete de salida enviado a una dirección IP de unidifusión por el objeto StreamSocket .

QualityOfService

Calidad del servicio en un objeto StreamSocket .

SerializeConnectionAttempts

Valor que indica si, cuando se realizan varios intentos de conexión, los intentos se realizan en paralelo o en serie.

Se aplica a

Consulte también