PB 電子会議室
カテゴリ:PowerBuilderの開発環境
日付:2001年06月20日 19:31 発信者:Rt
題名:PB7.0: Socket通信 recvのロジックについて
お疲れさまです。
Socket通信においてrecv()を行う際に、一度にすべてのデータを受信できない場合があるのでLOOPで全データを取得
し、受信したデータを構造体にコピーするという処理を行っています。
処理は以下の感じです。
内容は
3000Byteのサイズの構造体があり、Serverからはその構造体と同じ型の構造体のデータを送信してくる。
それを正しく受信したい。
というものです。
Char lc_chk[3000]
Long ll_recv_len_chk,ll_recv_byte,ll_ret
ll_recv_byte = 1
ll_recv_len_chk = 3000
DO UNTIL ll_recv_len_chk <= 0
ll_ret = recv(il_socketno,lc_chk[ll_recv_byte],ll_recv_len_chk,0)
ll_recv_byte += ll_ret
ll_recv_len_chk -= ll_ret
LOOP
MemCopy(lstr_chk_buf,lc_chk[1],3000)
で、うまく行くときもあるのですが
????の命令が????に対して云々
メモリがreadになることは出来ませんでした。
と、いうMSGとともにPBが死んでしまいます。
普通はどのような処理を行うのでしょう?
どなたか助けてください。
付加情報:
PowerBuilder Version (記載なし)
Client SoftWare
OS Windows 2000
DBMS (記載なし)
Browser (記載なし)
Server SoftWare
OS (記載なし)
DBMS Sybase SQL Anywhere Server
WebServer (記載なし)
Copyright © 2013 Power Future Co., Ltd.