System.Net.Socket.TSocket.Receive

De RAD Studio API Documentation
Aller à : navigation, rechercher

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 */;

Propriétés

Type Visibilité  Source Unité  Parent
function public
System.Net.Socket.pas
System.Net.Socket.hpp
System.Net.Socket TSocket


Description

Obtient les données envoyées à partir du point de terminaison connecté.

Receive bloque l'appelant jusqu'à ce qu'il renvoie les données demandées.

Vous pouvez transmettre les paramètres suivants à Receive :

  • Buf est un pointeur vers le tampon qui reçoit les données entrantes.
  • Offset est un nombre d'octets à ignorer au début des données demandées.
  • Count est la longueur (en octets) du tampon pointé par Buf, qui est également la longueur maximale des données demandées renvoyées par Receive. Si Count est égal à -1, Receive renvoie la longueur (en octets) des données reçues.
  • Flags est un ensemble d'indicateurs qui influencent le comportement de Receive. Pour plus d'informations, voir la documentation de la fonction recv (EN) sur MSDN.

Au lieu de fournir un pointeur vers un tampon (Buf), vous pouvez ne pas fournir un tel argument et laisser Receive renvoyer les données demandées, ou bien vous pouvez fournir un paramètre de sortie, Bytes, que Receive pourra remplir avec les données demandées. Dans les deux cas, les données renvoyées ne sont pas plus nombreuses que le nombre d'octets spécifié par Count.

Exceptions

Un appel à Receive peut déclencher l'une des exceptions suivantes :

Exception Exception.Message Scénarios

ESocketError

Erreur de socket réseau : <message d'erreur> (<code d'erreur>), sur la fonction 'ioctlsocket' de l'API

Erreur de socket réseau : <message d'erreur> (<code d'erreur>), sur la fonction 'recv' de l'API

Le type du socket n'est pas compatible avec l'appel

Voir aussi