TsgcUDPCLient › Méthodes › WriteData

WriteData Méthode

Envoie un seul datagramme UDP à une adresse et un port de destination explicites.

Surcharges

Surcharge 1

Syntaxe

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

Paramètres

NomTypeDescription
aIPAddressconst stringAdresse IPv4/IPv6 ou nom DNS de destination. Remplace la propriété Host uniquement pour cet appel.
aPortWord Port UDP de destination dans la plage 1 à 65535. Remplace la propriété Port pour cet appel uniquement.
aValue const stringCharge utile texte. Encodée en octets UTF-8 avant la transmission.

Remarques

Envoie la charge utile de chaîne sous forme d'un seul datagramme UDP à l'adresse spécifiée, sans modifier les propriétés Host/Port. Cette surcharge est pratique pour diffuser des messages texte, répondre à un pair précédemment reçu, ou cibler plusieurs hôtes depuis une seule instance cliente. Lorsque DTLS est activé, le datagramme est chiffré avec la session DTLS actuellement mise en cache.

Exemple

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

Surcharge 2

Syntaxe

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

Paramètres

NomTypeDescription
aIPAddressconst stringAdresse IPv4/IPv6 ou nom DNS de destination. Remplace la propriété Host uniquement pour cet appel.
aPortWord Port UDP de destination dans la plage 1 à 65535. Remplace la propriété Port pour cet appel uniquement.
aValue const TBytes Charge utile binaire brute envoyée telle quelle dans le datagramme UDP.

Remarques

Envoie un tampon binaire sous forme d'un seul datagramme UDP à l'adresse et au port spécifiés. Utilisez cette forme lorsque la charge utile n'est pas du texte (par exemple, des trames de protocole sérialisées, des échantillons audio ou des médias) afin qu'aucune conversion de jeu de caractères ne soit appliquée. La taille du datagramme doit rester inférieure à la MTU du chemin (généralement 1472 octets sur Ethernet IPv4) pour éviter la fragmentation IP.

Exemple

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

Retour aux méthodes