Topic Path: Symbol Reference > Classes > TIdUDPBase Class > TIdUDPBase Methods > ReceiveBuffer Method > ReceiveBuffer Method (TIdBytes, string, integer, TIdIPVersion, Integer)
TIdUDPBase.ReceiveBuffer Method (TIdBytes, string, integer, TIdIPVersion, Integer)

Reads a datagram from a remote connection.

function ReceiveBuffer(
    var ABuffer: TIdBytes; 
    var VPeerIP: string; 
    var VPeerPort: integer; 
    const AIPVersion: TIdIPVersion = ID_DEFAULT_IP_VERSION; 
    const AMSec: Integer = IdTimeoutDefault
): integer; virtual; overload;
Buffer where received data is stored.
IP address for the remote connection.
Port number for the remote connection.
IP Address family for the datagram transmission.
Milliseconds to wait for a readable connection. The default value is IdTimeoutDefault

Integer - Number of bytes read from the remote connection.

ReceiveBuffer is an overloaded integer function used to read a datagram from a remote connection into the buffer specified in ABuffer. 

AMSec indicates the number of milliseconds to delay while waiting for the socket handle in Binding to become Readable. The default value for AMSec is IdTimeoutDefault, and indicates that the value in ReceiveTimeOut will be used as the timeout value. Otherwise the numeric value in AMSec is used. 

If a timeout occurs while waiting for the Binding to become ready for the read operation, ReceiveBuffer will set the return value for the method to 0 (zero). In addition, the following values will be set before exiting the method: 


'' (empty string) 
0 (zero) 


On successful completion of the receive operation, VPeerIP and VPeerPort will contain the IP address and port number of the remote connection that is the origin for the data in ABuffer.

Copyright 1993-2006, Chad Z. Hower (aka Kudzu) and the Indy Pit Crew. All rights reserved.
Post feedback to the Indy Docs Newsgroup.