Server-Ereignisse

Aus RAD Studio
Wechseln zu: Navigation, Suche

Nach oben zu Auf Socket-Ereignisse antworten


Mit Server-Socket-Komponenten können zwei Typen von Verbindungen hergestellt werden: empfangende Verbindungen und Verbindungen mit Client-Anwendungen. Das Server-Socket empfängt bei Herstellung einer dieser Verbindungen jeweils Ereignisse.

Ereignisse bei empfangenden Verbindungen

Direkt vor dem Aufbau der empfangenden Verbindung tritt das Ereignis OnConnecting ein.

Ereignisse bei Client-Verbindungen

Wenn ein Server-Socket eine Anforderung für eine Client-Verbindung akzeptiert, treten die folgenden Ereignisse ein:

  • Ein OnAccept-Ereignis tritt ein, welches das neue TTcpClient-Objekt an die Ereignisbehandlungsroutine übergibt. Hier können Sie zum ersten Mal die Eigenschaften von TTcpClient zum Ermitteln von Informationen über den Server-Endpunkt der Verbindung zu einem Client verwenden.
  • Wenn für die Eigenschaft TServerType der Wert stThreadBlocking gesetzt ist, tritt ein [[lib_de:System.Win.ScktComp.TServerSocket.OnGetThread|OnGetThread]-Ereignis ein. Wenn Sie einen eigenen, individuell angepassten Nachkommen des Objekts ServerSocket zur Verfügung stellen möchten, können Sie dieses in einer OnGetThread-Ereignisbehandlungsroutine, die anstelle von TServerSocket verwendet wird, erstellen. Dieses Objekt wird dann an Stelle von TServerSocketThread verwendet. Um die Initialisierung des Thread vorzunehmen oder das Socket-API aufzurufen, bevor der Thread mit dem Lesen bzw. Schreiben über die Verbindung begonnen hat, müssen Sie die OnGetThread-Ereignisbehandlungsroutine ebenfalls benutzen.
  • Der Client beendet die Verbindung und ein OnAccept-Ereignis tritt ein. Bei einem nicht-blockierenden Server können Sie nun mit dem Lesen oder Schreiben über die Socket-Verbindung beginnen.

Siehe auch