System.Net.Socket.TSocket.Receive

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

Delphi

function Receive(var Buf; Count: Integer; Flags: Integer): Integer; overload;
function Receive(var Buf; Count: Integer; Flags: TSocketFlags = []): Integer; overload; inline;
function Receive(Count: Integer = -1; Flags: TSocketFlags = []): TBytes; overload; inline;
function Receive(out Bytes: TBytes; Count: Integer = -1; Flags: TSocketFlags = []): Integer; overload;
function Receive(var Bytes: array of Byte; Offset: Integer = 0; Count: Integer = -1; Flags: TSocketFlags = []): Integer; overload;

C++

int __fastcall Receive(void *Buf, int Count, int Flags)/* overload */;
int __fastcall Receive(void *Buf, int Count, TSocketFlags Flags = TSocketFlags() )/* overload */;
System::DynamicArray<System::Byte> __fastcall Receive(int Count = 0xffffffff, TSocketFlags Flags = TSocketFlags() )/* overload */;
int __fastcall Receive(/* out */ System::DynamicArray<System::Byte> &Bytes, int Count = 0xffffffff, TSocketFlags Flags = TSocketFlags() )/* overload */;
int __fastcall Receive(System::Byte *Bytes, const int Bytes_High, int Offset = 0x0, int Count = 0xffffffff, TSocketFlags Flags = TSocketFlags() )/* overload */;

Eigenschaften

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


Beschreibung

Erhält Daten, die vom verbundenen Endpunkt gesendet werden.

Receive blockiert den Aufrufer, bis die angeforderten Daten zurückgegeben werden.

Sie können an Receive die folgenden Parameter übergeben:

  • Buf ist ein Zeiger auf den Puffer zum Empfangen der eingehenden Daten.
  • Offset ist eine Byte-Anzahl, die am Beginn der angeforderten Daten übersprungen werden soll.
  • Count ist die Länge (in Byte) des Puffers, auf den von Buf gezeigt wird. Dies ist zudem die maximale Länge der angeforderten Daten, die Receive zurückgibt. Wenn Count -1 ist, gibt Receive die Länge (in Byte) der empfangenen Daten zurück.
  • Flags ist ein Flag-Satz, der das Verhalten von Receive beeinflusst. Weitere Informationen finden Sie in der Dokumentation der Funktion recv auf der MSDN-Website.

Anstatt einen Zeiger auf einen Puffer (Buf) bereitzustellen, können Sie auch kein derartiges Argument angeben und Receive die angeforderten Daten zurückgeben lassen oder einen Ausgabeparameter, Bytes, angeben, den Receive mit den angeforderten Daten füllen kann. In beiden Fällen werden die zurückgegebenen Daten niemals größer als die angegebenen Count Byte.

Exceptions

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

Exception Exception.Message Szenarien

ESocketError

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

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

Socket-Typ nicht kompatibel mit Aufruf

Siehe auch