Delphi UDP İstemcisi
Delphi/C++Builder üzerinden UDP datagramları gönderin ve alın. IPv4 ve IPv6, isteğe bağlı bir DTLS oturumu ve bir SOCKS5 yolu, ayrıca tüm STUN, TURN, ICE ve WebRTC yığınının üzerine kurulduğu taşıma.
Delphi/C++Builder üzerinden UDP datagramları gönderin ve alın. IPv4 ve IPv6, isteğe bağlı bir DTLS oturumu ve bir SOCKS5 yolu, ayrıca tüm STUN, TURN, ICE ve WebRTC yığınının üzerine kurulduğu taşıma.
Yüksek performanslı UDP datagram istemcisi — STUN, TURN, ICE, RTCPeerConnection ve yazdığınız herhangi bir özel UDP protokolünün altındaki temel.
TsgcUDPClient
Windows, macOS, Linux, iOS, Android
Core / Standard / Professional / Enterprise
Host / Port ayarlayın, Active := True yapın, ardından göndermek istediğiniz metin veya baytlarla WriteData çağırın. Gelen datagramlar OnUDPRead üzerine ulaşır.
uses
sgcP2P, sgcUDP_Classes, sgcSocket_Classes;
// TFormUDP, FClient: TsgcUDPClient ve FIncoming: TStringList tutar
procedure TFormUDP.CreateClient;
begin
FClient := TsgcUDPClient.Create(nil);
FClient.Host := '127.0.0.1';
FClient.Port := 4000;
FClient.OnUDPRead := OnUDPRead;
FClient.Active := True;
FClient.WriteData('hello over UDP');
end;
procedure TFormUDP.OnUDPRead(Sender: TObject; Socket: TsgcUDPSocket;
Bytes: TsgcBytes);
var
oStream: TStringStream;
begin
// okuma iş parçacığında tetiklenir, bir denetime dokunmadan önce yönlendirin
oStream := TStringStream.Create('');
try
oStream.Write(Bytes[0], Length(Bytes));
FIncoming.Add(oStream.DataString);
finally
oStream.Free;
end;
end;
// includes: sgcP2P.hpp, sgcUDP_Classes.hpp, sgcSocket_Classes.hpp
TsgcUDPClient *Client = new TsgcUDPClient(this);
Client->Host = "127.0.0.1";
Client->Port = 4000;
Client->OnUDPRead = OnUDPRead;
Client->Active = true;
Client->WriteData("hello over UDP");
void __fastcall TFormUDP::OnUDPRead(TObject *Sender,
TsgcUDPSocket *Socket, TsgcBytes Bytes)
{
// okuma iş parçacığında tetiklenir, bir denetime dokunmadan önce yönlendirin
}
STUN / TURN / ICE / WebRTC ve herhangi bir özel datagram protokolü için taşıma olarak kullanılan ince, öngörülebilir bir UDP soket katmanı.
WriteData(text) ve WriteData(bytes), Host / Port hedefine bir datagramı kuyruğa alır; adres alan aşırı yüklemeler ise datagramı başka herhangi bir yere gönderir. OnUDPRead, gelen her paketi ulaştığı soketle birlikte iletir.
Datagramları bir DTLS oturumu içinde taşımak için DTLS := True ayarlayın ve DTLSOptions değerlerini doldurun. OnDTLSVerifyPeer eş sertifikasını size verir, böylece kabul edip etmeyeceğinize siz karar verirsiniz.
Proxy, datagramları bir SOCKS5 UDP ASSOCIATE üzerinden taşır. HTTP proxy EsgcUDPProxyNotSupported ile reddedilir, çünkü UDP yolunu yalnızca SOCKS5 tanımlar.
Her OnUDPRead bir TsgcUDPSocket taşır: IP ve Port göndereni tanımlar, LocalIP ve LocalPort ise ICE'nin daha sonra host adayı olarak yayımladığı yerel tabanı tanımlar.
IPVersion doğrudan alttaki sokete iletilir, bu yüzden IPv6 yoluna ihtiyaç duyduğunuzda Id_IPv6 olarak ayarlayın.
Daha üst düzey her P2P bileşeni (TsgcSTUNClient, TsgcTURNClient, TsgcICEClient, TsgcRTCPeerConnection) bu istemciyi dahili olarak UDP taşıması olarak kullanır.
Bileşen referansına doğrudan bağlanın, çalışmaya hazır demo projesini alın ve denemeyi indirin.
| Çevrimiçi Yardım — TsgcUDPClient Bu bileşen için tam özellik, metot ve olay referansı. | Aç | |
| Demo Projesi — Demos\35.P2P\01.UDP_Server_Client Çalışmaya hazır örnek proje. sgcWebSockets paketinin içinde gelir — denemeyi aşağıdan indirin. | Aç | |
| Teknik Belge (PDF) Özellikler, hızlı başlangıç, Delphi ve C++ Builder için kod örnekleri ve birincil kaynak referansları — yalnızca bu bileşen. | Aç | |
| Kullanıcı Kılavuzu (PDF) Kütüphanedeki her bileşeni kapsayan kapsamlı kılavuz. | Aç |