System.Net.Socket.TSocket.Listen

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

Delphi

procedure Listen(const Address, Service: string; Port: Word; QueueSize: Integer = -1); overload;
procedure Listen(const Endpoint: TNetEndpoint; QueueSize: Integer = -1); overload;

C++

void __fastcall Listen(const System::UnicodeString Address, const System::UnicodeString Service, System::Word Port, int QueueSize = 0xffffffff)/* overload */;
void __fastcall Listen(const TNetEndpoint &Endpoint, int QueueSize = 0xffffffff)/* overload */;

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
procedure
function
public
System.Net.Socket.pas
System.Net.Socket.hpp
System.Net.Socket TSocket


Beschreibung

Konfiguriert den Socket so, dass das Akzeptieren von eingehenden Verbindungen gestartet wird.

Nach einem Aufruf von Listen müssen Sie Accept aufrufen, um eine eingehende Verbindung tatsächlich zu akzeptieren und einen Kommunikationskanal zum Client einzurichten.

Um den Endpunkt anzugeben, über den Ihr Socket empfängt, müssen Sie eine der folgenden Parameterkombinationen angeben:

  • Einen Endpunkt (Endpoint).
  • Eine IP-Adresse (Address) und einen Dienst (Service). Sie können als Port ein leeres Wort übergeben, da mit Service der Port ermittelt wird.
  • Eine IP-Adresse (Address) und einen Port (Port). Übergeben Sie als Service einen leeren String, ansonsten wird mit dem angegebenen Dienstnamen der zu verwendende Port ermittelt, und der angegebene Port wird ignoriert.

QueueSize legt die maximale Länge der Warteschlange der ausstehenden Verbindungen fest. Siehe die Funktion listen auf der MSDN-Website. Verwenden Sie -1 als die maximale empfohlene Länge der Warteschlange (Vorgabe).

Exceptions

Ein Aufruf von Bind kann eine der folgenden Exceptions auslösen:

Exception Exception.Message Szenarien

ESocketError

Es kann kein neuer Socket erstellt werden

Ein geöffneter Socket kann nicht überwacht werden

Netzwerk-Socket-Fehler: <Fehlermeldung> (<Fehlercode>) bei API "bind"

Netzwerk-Socket-Fehler: <Fehlermeldung> (<Fehlercode>) bei API "listen"

Netzwerk-Socket-Fehler: <Fehlermeldung> (<Fehlercode>) bei API "socket"

Siehe auch