TsgcUDPCLient › Métodos › WriteData

WriteData Método

Envía un único datagrama UDP a una dirección de destino y puerto explícitos.

Sobrecargas

Sobrecarga 1

Sintaxis

procedure WriteData(const aIPAddress: string; aPort: Word; const aValue: string);

Parámetros

NombreTipoDescripción
aIPAddressconst stringDirección IPv4/IPv6 de destino o nombre DNS. Reemplaza la propiedad Host únicamente para esta llamada.
aPortWordPuerto UDP de destino en el rango de 1 a 65535. Reemplaza la propiedad Port únicamente para esta llamada.
aValueconst stringCarga útil de texto. Se codifica como bytes UTF-8 antes de ser transmitida.

Observaciones

Envía el payload de cadena como un único datagrama UDP a la dirección especificada, sin alterar las propiedades Host/Port. Esta sobrecarga es conveniente para difundir mensajes de texto, responder a un par recibido previamente o dirigirse a múltiples hosts desde una misma instancia de cliente. Cuando DTLS está habilitado, el datagrama se cifra con la sesión DTLS almacenada en caché actualmente.

Ejemplo

oClient.WriteData('192.168.1.10', 5000, 'hello');

Sobrecarga 2

Sintaxis

procedure WriteData(const aIPAddress: string; aPort: Word; const aValue: TBytes);

Parámetros

NombreTipoDescripción
aIPAddressconst stringDirección IPv4/IPv6 de destino o nombre DNS. Reemplaza la propiedad Host únicamente para esta llamada.
aPortWordPuerto UDP de destino en el rango de 1 a 65535. Reemplaza la propiedad Port únicamente para esta llamada.
aValueconst TBytesCarga útil binaria sin procesar enviada literalmente dentro del datagrama UDP.

Observaciones

Envía un búfer binario como un único datagrama UDP a la dirección y puerto especificados. Utilice esta forma cuando la carga útil no sea texto (por ejemplo, tramas de protocolo serializadas, muestras de audio o multimedia) para que no se aplique ninguna conversión de juego de caracteres. El tamaño del datagrama debe mantenerse por debajo del MTU de la ruta (normalmente 1472 bytes en Ethernet IPv4) para evitar la fragmentación IP.

Ejemplo

var vBytes: TBytes;
begin
  vBytes := TEncoding.UTF8.GetBytes('ping');
  oClient.WriteData('192.168.1.10', 5000, vBytes);
end;

Volver a Métodos