4.6.3 dc_clt_receive2_sメッセージの受信(障害時メッセージ受信)

<この項の構成>
(1) 形式
(2) 機能
(3) UAPで値を設定する引数
(4) 値が返される引数
(5) リターン値
(6) 注意事項

(1) 形式

(a) TP1/Client/Wの場合
●_s付き関数

#include <dcvclt.h>
DCLONG dc_clt_receive2_s(DCCLT_ID cltid, char *buff,
                        DCLONG *recvleng, DCLONG timeout,
                        DCLONG flags)

●_s無し関数

#include <dcvclt.h>
DCLONG dc_clt_receive2(char *buff, DCLONG *recvleng,
                      DCLONG timeout, DCLONG flags)

(b) TP1/Client/Pの場合
●_s付き関数

#include <dcvclt.h>
DCLONG dc_clt_receive2_s(DCCLT_ID cltid, char CLTFAR *buff,
                        DCLONG CLTFAR *recvleng, DCLONG timeout,
                        DCLONG flags)

●_s無し関数

#include <dcvclt.h>
DCLONG dc_clt_receive2(char CLTFAR *buff,
                      DCLONG CLTFAR *recvleng,
                      DCLONG timeout, DCLONG flags)

(2) 機能

MHPが送信したメッセージを受信します。

dc_clt_receive2_s関数を実行する場合,flagsにDCCLT_ONEWAY_RCV,またはDCCLT_SNDRCVを指定したdc_rpc_open_s関数を,あらかじめ実行しておく必要があります。

(3) UAPで値を設定する引数

(4) 値が返される引数

(5) リターン値

リターン値数値
(10進数)
意味
DC_OK0正常に終了しました。
DCCLTER_INVALID_ARGS-2501引数に指定した値が誤っています。
DCCLTER_PROTO-2502次のどちらかの要因が考えられます。
  • dc_rpc_open_s関数が実行されていません。
  • dc_rpc_open_s関数は実行されていますが,flagsにDCCLT_ONEWAY_RCV,またはDCCLT_SNDRCVを指定していません。
DCCLTER_NO_BUFS-2504メモリ不足が発生しました。
DCCLTER_NET_DOWN-2506ネットワーク障害が発生しました。
DCCLTER_TIMED_OUT-2507メッセージの受信時にタイムアウトになりました。
DCCLTER_SYSERR-2518システムエラーが発生しました。
DCCLTER_RESOURCE-2538資源不足が発生しました。
DCCLTER_CONNFREE-2542相手システムからコネクションが解放されました。
DCCLTER_INVALID_CLTID-2544cltidに指定したクライアントIDは,dc_clt_cltin_s関数で受け取ったクライアントIDと異なっています。

(6) 注意事項