4.7.5 dc_clt_chained_accept_notification_s一方通知受信

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

(1) 形式

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

#include <dcvclt.h>
DCLONG dc_clt_chained_accept_notification_s
                            (DCCLT_ID ntfid, char *inf,
                             DCLONG *inf_len,
                             DCLONG timeout,
                             char *hostname,
                             char *nodeid,
                             DCLONG flags)

●_s無し関数

#include <dcvclt.h>
DCLONG dc_clt_chained_accept_notification
                      (char *inf, DCLONG *inf_len,
                       DCLONG timeout, char *hostname,
                       char *nodeid, DCLONG flags)

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

#include <dcvclt.h>
DCLONG dc_clt_chained_accept_notification_s
                            (DCCLT_ID ntfid, char CLTFAR *inf,
                             DCLONG CLTFAR *inf_len,
                             DCLONG timeout,
                             char CLTFAR *hostname,
                             char CLTFAR *nodeid,
                             DCLONG flags)

●_s無し関数

#include <dcvclt.h>
DCLONG dc_clt_chained_accept_notification
                      (char CLTFAR *inf, DCLONG CLTFAR *inf_len,
                       DCLONG timeout, char CLTFAR *hostname,
                       char CLTFAR *nodeid, DCLONG flags)

(2) 機能

サーバ側の関数dc_rpc_cltsendによって通知されるメッセージを,引数timeoutで指定した値まで待ち続けます。受信した時点でCUPに制御を戻し,リターン値,通知メッセージ,通知メッセージ長,通知元サーバのホスト名,通知元サーバのノード識別子を返します。この関数を発行する前にdc_clt_open_notification_s関数を発行しておく必要があります。

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

(4) 値が返される引数

(5) リターン値

リターン値数値
(10進数)
意味
DC_OK0正常終了しました。
DCCLTER_INVALID_ARGS-2501引数に指定した値が誤っています。
DCCLTER_PROTO-2502dc_clt_open_notification_s関数が実行されていません。
DCCLTER_NO_BUFS-2504必要なバッファが確保できませんでした。
DCCLTER_NET_DOWN-2506ネットワーク障害が発生しました。
DCCLTER_TIMED_OUT-2507メッセージの受信時にタイムアウトになりました。
DCCLTER_SYSERR-2518システムエラーが発生しました。
DCCLTER_VERSION-2535バージョン不一致が発生しました。
DCCLTER_INVALID_NTFID-2544ntfidに指定した一方通知受信IDは,dc_clt_open_notification_s関数で受け取った一方通知受信IDと異なっています。
DCCLTER_INF_TOO_BIG-2546受信したメッセージが,CUPで用意した領域に収まりません。収まらないメッセージは切り捨てました。引数hostname,およびnodeidには値を設定済みです。
DCCLTER_INVALID_MESSAGE-2548不正なメッセージを受信しました。
DCCLTER_ACCEPT_CANCELED-2549一方通知受信待ち状態がdc_clt_cancel_notification_s関数によって解除されました。引数inf,inf_len,およびhostnameには値を設定済みです。

(6) 注意事項

引数hostnameには64バイト以上,引数nodeidには8バイト以上の領域を指定してください。領域がこれより小さい場合,TP1/Client内部の処理で領域破壊を起こすおそれがあります。

注※
クライアント環境定義DCCLTOPTIONに00000008を指定した場合,64バイトではなく,256バイトになります。