TsgcUDPCLient › Metodi › WriteData
Invia un singolo datagramma UDP a un indirizzo e una porta di destinazione espliciti.
procedure WriteData(const aIPAddress: string; aPort: Word; const aValue: string);
| Nome | Tipo | Descrizione |
|---|---|---|
aIPAddress | const string | Indirizzo IPv4/IPv6 di destinazione o nome DNS. Sovrascrive la proprietà Host solo per questa chiamata. |
aPort | Word | Porta UDP di destinazione nell'intervallo da 1 a 65535. Sostituisce la proprietà Port solo per questa chiamata. |
aValue | const string | Payload di testo. Codificato in byte UTF-8 prima di essere trasmesso. |
Invia il payload stringa come singolo datagramma UDP all'indirizzo specificato, senza alterare le proprietà Host/Port. Questo sovraccarico è comodo per trasmettere messaggi di testo, rispondere a un peer ricevuto in precedenza o indirizzare più host da una singola istanza client. Quando DTLS è abilitato, il datagramma viene cifrato con la sessione DTLS attualmente memorizzata nella cache.
oClient.WriteData('192.168.1.10', 5000, 'hello');
procedure WriteData(const aIPAddress: string; aPort: Word; const aValue: TBytes);
| Nome | Tipo | Descrizione |
|---|---|---|
aIPAddress | const string | Indirizzo IPv4/IPv6 di destinazione o nome DNS. Sovrascrive la proprietà Host solo per questa chiamata. |
aPort | Word | Porta UDP di destinazione nell'intervallo da 1 a 65535. Sostituisce la proprietà Port solo per questa chiamata. |
aValue | const TBytes | Payload binario grezzo inviato senza modifiche all'interno del datagramma UDP. |
Invia un buffer binario come singolo datagramma UDP all'indirizzo e alla porta specificati. Utilizzare questa forma quando il payload non è testo (ad esempio, frame di protocollo serializzati, campioni audio o media) in modo che non venga applicata alcuna conversione del set di caratteri. La dimensione del datagramma dovrebbe essere mantenuta al di sotto del path MTU (in genere 1472 byte su IPv4 Ethernet) per evitare la frammentazione IP.
var vBytes: TBytes;
begin
vBytes := TEncoding.UTF8.GetBytes('ping');
oClient.WriteData('192.168.1.10', 5000, vBytes);
end;