System.Net.Socket.TSocket.Receive
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 */;
Inhaltsverzeichnis
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 vonBuf
gezeigt wird. Dies ist zudem die maximale Länge der angeforderten Daten, die Receive zurückgibt. WennCount
-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 |
---|---|---|
Netzwerk-Socket-Fehler: <Fehlermeldung> (<Fehlercode>) bei API "ioctlsocket" |
| |
Netzwerk-Socket-Fehler: <Fehlermeldung> (<Fehlercode>) bei API "recv" |
| |
Socket-Typ nicht kompatibel mit Aufruf |
|
Siehe auch
- System.Net.Socket.TSocket.ReceiveLength
- System.Net.Socket.TSocket.ReceiveFrom
- System.Net.Socket.TSocket.Send
- System.Net.Socket.TSocket.BeginReceive
- System.Net.Socket.TSocket.EndReceiveString
- System.Net.Socket.TSocket.EndReceiveBytes
- Funktion recv (MSDN)