| 4D Internet Commands v15TCP_ReceiveBLOB | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| 
 | 
    4D Internet Commands v15
 TCP_ReceiveBLOB 
         | |||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
| TCP_ReceiveBLOB ( tcp_ID ; blobToReceive ) -> 戻り値 | ||||||||
| 引数 | 型 | 説明 | ||||||
| tcp_ID | 倍長整数 |   | TCPセッション参照 | |||||
| blobToReceive | BLOB |   | 受信したデータを格納するBLOB | |||||
| 戻り値 | 整数 |   | エラーコード | |||||
確立されたTCPセッション参照を指定し、TCP_ReceiveBLOB コマンドはblobToReceiveにパケットデータを受け取ります。
tcp_ID は、TCP_Open または TCP_Listen コマンドで確立されたTCPセッション参照です。
このコマンドは、32kの制限があるテキストの代わりにデータをBlobに受信すること以外、TCP_Receiveコマンドと同じ動作を行います。このコマンドを使用するとバイナリオブジェクトを受信できるようになります。
blobToReceive には受信したBLOBが格納されます。TCPパケットのデータを受信するとき、一回のTCP_ReceiveBLOBの呼び出しですべてのデータを受信できるとは限りません。TCP_ReceiveBLOB コマンドは通常、接続ステータスや特定の値をチェックしながら、Repeatループの中で使用されます。
この例題では 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)
  `受信したBLOBを連結する
    COPY BLOB($Blob_Received;$Blob_All;$srcpos;$dstpos;BLOB size($Blob_Received))
 Until(($State=0)|($Err#0))
	プロダクト: 4D Internet Commands
	テーマ: IC TCP/IP
	番号: 
        88887
        
        
        
	
	初出: 4D Internet Commands 6.7
	
	
	
	
	
	
	
	
	4D Internet Commands ( 4D Internet Commands v15)
	
	
	
	
	
	
	
 コメントを追加
コメントを追加