Internet Direct (Indy)
Home
PreviousUpNext
TIdUDPBase.ReceiveBuffer Method (TIdBytes, string, integer, TIdIPVersion, Integer)

Reads a datagram from a remote connection.

Pascal
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;
Parameters 
Description 
ABuffer 
Buffer where received data is stored.
 
VPeerIP 
IP address for the remote connection.
 
VPeerPort 
Port number for the remote connection.
 
AIPVersion 
IP Address family for the datagram transmission.
 
AMSec 
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: 

 

Argument 
Value 
VPeerIP 
'' (empty string) 
VPeerPort 
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.

Internet Direct (Indy) version 10.1.5
Copyright © 1993-2006, Chad Z. Hower (aka Kudzu) and the Indy Pit Crew. All rights reserved.
Website http://www.indyproject.org.
Post feedback to the Indy Documentation newsgroup.