4D v19TCP_ReceiveBLOB | 
            ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 
                 
                
    
    
                 | 
                
			
                    
                         
    4D v19
 
TCP_ReceiveBLOB 
                                
                                
        
 | 
                |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| TCP_ReceiveBLOB ( tcp_ID ; datosRecibidos ) -> resultado | ||||||||
| Parámetro | Tipo | Descripción | ||||||
| tcp_ID | Entero largo | 
             
         | 
        Referencia de una sesión TCP abierta | |||||
| datosRecibidos | BLOB | 
             
         | 
        BLOB para recibir los datos | |||||
| resultado | Entero | 
             
         | 
        Código de error | |||||
El comando TCP_ReceiveBLOB recibe paquetes de datos a través de una sesión TCP.
Este comando funciona igual que el comando TCP_Receive, con la diferencia de que recibe datos en un BLOB en lugar de un texto, permitiendo superar el límite de 32K de los datos de tipo texto y recibir objetos binarios.
tcp_ID es una referencia entero largo a una sesión TCP abierta con el comando TCP_Open o TCP_Listen.
blobARecibir es el BLOB que recibe los datos. Al recibir datos a través de paquetes TCP, no puede contar con que todos sus datos sean recibidos por una sola llamada TCP_ReceiveBLOB. El comando TCP_ReceiveBLOB se suele llamar dentro de un bucle Repeat...Until que verifica continuamente el estado de la conexión o busca un valor particular.
Este ejemplo muestra la estructura típica de un método que utiliza el comando TCP_ReceiveBLOB:
 C_BLOB($Blob_Received;$Blob_All)
 C_LONGINT($srcpos;$dstpos)
 Repeat
    $Err:=TCP_ReceiveBLOB($TCP_ID;$Blob_Received )
    $Err:=TCP_State($TCP_ID;$State)
    $srcpos:=0
    $dstpos:=BLOB size($Blob_All)
  `Concatenating received Blobs
    COPY BLOB($Blob_Received;$Blob_All;$srcpos;$dstpos;BLOB size($Blob_Received))
 Until(($State=0)|($Err#0))
	Producto: 4D
	Tema: IC TCP/IP
	Número 
        88887
        
        
        
	
	Creado por: 4D Internet Commands 6.7
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	
	4D Internet Commands ( 4D v19)
	
	
Añadir un comentario