AYUDA EN LÍNEA
 WINDEVWEBDEV Y WINDEV MOBILE

Este contenido se ha traducido automáticamente.  Haga clic aquí  para ver la versión en inglés.
Ayuda / WLanguage / Funciones WLanguage / Comunicación / Sockets
  • Recrear una toma
  • Reutilización de una dirección ya utilizada
WINDEV
WindowsLinuxJavaReportes y ConsultasCódigo de Usuario (UMC)
WEBDEV
WindowsLinuxPHPWEBDEV - Código Navegador
WINDEV Mobile
AndroidWidget Android iPhone/iPadIOS WidgetApple WatchMac Catalyst
Otros
Procedimientos almacenados
Crea un socket seguro según el protocolo SSL.
Ejemplo
// Création d'un serveur de Sockets SSL avec un certificat
sSocketSSL is string = "sSocketSSL"
// Ici utilisation du hash du certificat, 
// propriété "Empreinte numérique" dans le gestionnaire de certificats
// (certmgr.msc)
IF NOT SocketCreateSSL(sSocketSSL, 5043, "9d a4 84 fc f6 62 92 90 9a 62 d4 " + ...
		"ca 65 fb 08 7e 06 45 de 24", CertificateHash) THEN
	Error(ErrorInfo())
	RETURN
ELSE
	Info("Socket serveur SSL démarrée")
	// Suite du socket serveur ...
	// En fin de traitement il faudra fermer le socket
	SocketClose(sSocketSSL)
END
Sintaxis
<Result> = SocketCreateSSL(<Socket name> , <Port number> , <Certificate Identifier> [, <SSL options> [, <Address> [, <Store name>]]])
<Result>: booleano
  • True si se creó el socket,
  • False en caso contrario. Si se produce un error, puede obtener más detalles sobre el error con ErrorInfo.
<Socket name>: Cadena de caracteres
Nombre que se dará a la toma. Este nombre será utilizado por todas las funciones de socket. Atención: el nombre de la toma distingue mayúsculas y minúsculas.
<Port number>: Integro
Número de puerto que se le asignará al zócalo. Este número debe incluirse entre 5000 y 65000. Este número se especificará cuando los ordenadores cliente se conecten al servidor. Esta conexión será establecida por SocketConnectSSL.
<Certificate Identifier>: Cadena de caracteres
Nombre o hash del certificado a utilizar (según lo especificado en <SSL Options>):
  • nombre del certificado si se utiliza la constante CertificateName,
  • hash del certificado si se utiliza la constante CertificateHash . Los caracteres de espacio están permitidos en el Hash. El hash del certificado puede encontrarse en la propiedad "Impresión digital" del gestor de certificados (certmgr.msc) del ordenador, por ejemplo:
    "9d a4 84 fc f6 62 92 90 9a 62 d4 ca 65 fb 08 7e 06 45 de 24"
Este certificado debe tener una clave privada, instalada en el servidor. Para obtener más información, consulte ¿Cómo crear un certificado SSL?
<SSL options>: Combinación opcional de constantes de tipo integer
Protocolo y modo de identificación utilizados:
ProtocoloSSL2Protocolo SSL2.
ProtocoloSSL3Protocolo SSL3.
ProtocoloTLS1Protocolo TLS1
ProtocoloTLS1_1TLS 1.1 protocol
ProtocoloTLS1_2TLS 1.2 protocol
ProtocoloTLS1_3TLS 1.3 protocol
CertificadoHash<Certificate identifier> corresponde al hash del certificado.
CertificateName<Certificate identifier> corresponde al nombre del certificado.

Combinación utilizada por defecto: ProtocoloTLS1 + ProtocolTLS1_1 + ProtocolTLS1_2 + CertificateName.
<Address>: Cadena de caracteres opcional
Dirección IP en la que debe crearse el socket en el ordenador actual. Si el ordenador actual está asociado a varias direcciones IP (o a varias tarjetas de red), este parámetro permite elegir la dirección IP que se asociará a la toma.
Esta dirección IP puede tener el siguiente formato:
  • Dirección IP en formato XXX.XXX.XXX.XXX (125.5.110.100 por ejemplo).
  • Dirección IP que contiene el nombre del servidor (www.windev.com por ejemplo). Se recomienda esta sintaxis.
<Store name>: Cadena de caracteres opcional o constante opcional
New in SaaS
Nombre del almacén en el que buscar certificados. Este parámetro puede corresponder a:
  • una cadena,
  • una de las siguientes constantes:
    certAuthorityAlmacén de autoridades de certificación.
    certTrustAlmacén de confianza.
    certPersonal
    (Valor predeterminado)
    Almacén personal.
    certRootAlmacén raíz
    Nota: Estas constantes no pueden combinarse.

Nota: Esta función sólo está disponible en WINDEV Suite SaaS 2025 - Actualización 3.
Para obtener más información, consulte Utilizar las novedades exclusivas de WINDEV Suite SaaS 2025.
Observaciones

Recrear una toma

Si un socket no se cierra correctamente con SocketClose (reiniciando el ordenador, por ejemplo), recrear el socket puede llevar bastante tiempo. De hecho, tendrás que esperar hasta que el socket sea liberado por el sistema.

Reutilización de una dirección ya utilizada

Por defecto, SocketCreateSSL permite reutilizar una dirección ya utilizada (por la propia aplicación o por otra aplicación). Para prohibir este modo de funcionamiento, escriba la siguiente línea de código:
Socket.Option = SocketNoReuseAddress
Notas: Esta opción también indica si una dirección o puerto ya está en uso. En este caso, la función SocketCreateSSL devuelve un error.
Clasificación Lógica de negocio / UI: Lógica de negocio
Componente: wd300com.dll
Versión mínima requerida
  • Versión 12
Esta página también está disponible para…
Comentarios
Haga clic en [Agregar] para publicar un comentario

Última modificación: 25/06/2025

Señalar un error o enviar una sugerencia | Ayuda local