StreamSocketControl Clase
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
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
- 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. |