TsgcUDPCLient › Metody › WriteData

WriteData Metoda

Wysyła pojedynczy datagram UDP do jawnie wskazanego adresu docelowego i portu.

Przeciążenia

Przeciążenie 1

Składnia

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

Parametry

NazwaTypOpis
aIPAddressconst stringDocelowy adres IPv4/IPv6 lub nazwa DNS. Zastępuje właściwość Host wyłącznie dla tego wywołania.
aPortWordDocelowy port UDP w zakresie od 1 do 65535. Zastępuje właściwość Port tylko dla tego wywołania.
aValueconst stringŁadunek tekstowy. Przed transmisją kodowany jako bajty UTF-8.

Uwagi

Wysyła ładunek tekstowy jako pojedynczy datagram UDP na wskazany adres, nie zmieniając właściwości Host/Port. To przeciążenie jest wygodne do rozsyłania wiadomości tekstowych, odpowiadania poprzednio odebranemu węzłowi lub adresowania wielu hostów z jednej instancji klienta. Gdy DTLS jest włączone, datagram jest szyfrowany przy użyciu bieżącej sesji DTLS przechowywanej w pamięci podręcznej.

Przykład

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

Przeciążenie 2

Składnia

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

Parametry

NazwaTypOpis
aIPAddressconst stringDocelowy adres IPv4/IPv6 lub nazwa DNS. Zastępuje właściwość Host wyłącznie dla tego wywołania.
aPortWordDocelowy port UDP w zakresie od 1 do 65535. Zastępuje właściwość Port tylko dla tego wywołania.
aValueconst TBytesSurowy ładunek binarny wysyłany bez modyfikacji wewnątrz datagramu UDP.

Uwagi

Wysyła bufor binarny jako pojedynczy datagram UDP na określony adres i port. Tej formy należy używać, gdy ładunek nie jest tekstem (na przykład zserializowane ramki protokołu, próbki audio lub multimedia), aby nie stosowano konwersji zestawu znaków. Rozmiar datagramu powinien być mniejszy niż MTU ścieżki (zazwyczaj 1472 bajty w sieci IPv4 Ethernet), aby uniknąć fragmentacji IP.

Przykład

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

Powrót do metod