RECV
Lecture dans un socket
Declare Function recv Lib "wsock32" _
(ByVal sock As Long, _
buffer As Any, _
ByVal length As Long, _
ByVal flags As Long) As Long
Paramètres :
sock : identifie le socket à utiliser
buffer : tampon qui recevra les octets lus
length : nombre d'octets à lire
flags : type de lecture
0 ' lecture normale
Public Const MSG_OOB = &H1 ' lit les données urgentes (Out Of Band)
Public Const MSG_PEEK = &H2 ' ne retire pas les données de la queue de réception
retour : SOCKET_ERROR en cas d'erreur, nombre d'octets lus sinon.
Public Const SOCKET_ERROR = -1
Remarque :
si aucun octet
n'est disponible à la lecture, cette fonction bloque
le processus jusqu'à ce que des données
parviennent au socket (voir la fonction WSAAsyncSelect).
Exemple
:
Const MAX_BUFF_SIZE = 10000
Dim buff(0 To MAX_BUFF_SIZE) As Byte
Dim sock as long
Dim CR as long
CR = recv(sock, buff(0), MAX_BUFF_SIZE, 0)
If CR = SOCKET_ERROR Then
MsgBox "Erreur sur recv = " & WSAGetLastError()
End If
|