分散トランザクション処理機能 OpenTP1 クライアント使用の手引 TP1/Client/W,TP1/Client/P編

[目次][索引][前へ][次へ]

4.7.1 dc_clt_accept_notification_s一方通知メッセージの受信

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

(1) 形式

(a) TP1/Client/Wの場合
●_s付き関数
 
#include <dcvclt.h>
DCLONG dc_clt_accept_notification_s(
                           HWND hWnd, char *defpath,
                           char *inf,
                           DCLONG *inf_len,
                           unsigned short port, DCLONG timeout,
                           char *hostname,
                           char *nodeid, DCLONG flags)
 
●_s無し関数
 
#include <dcvclt.h>
DCLONG dc_clt_accept_notification(
                           char *inf, DCLONG *inf_len,
                           unsigned short port, DCLONG timeout,
                           char *hostname, char *nodeid,
                           DCLONG flags)
 
(b) TP1/Client/Pの場合
●_s付き関数
 
#include <dcvclt.h>
DCLONG dc_clt_accept_notification_s(
                           HWND hWnd, char CLTFAR *defpath,
                           char CLTFAR *inf,
                           DCLONG CLTFAR *inf_len,
                           unsigned short port, DCLONG timeout,
                           char CLTFAR *hostname,
                           char CLTFAR *nodeid, DCLONG flags)
 
●_s無し関数
 
#include <dcvclt.h>
DCLONG dc_clt_accept_notification(
                           char CLTFAR *inf,
                           DCLONG CLTFAR *inf_len,
                           unsigned short port, DCLONG timeout,
                           char CLTFAR *hostname,
                           char CLTFAR *nodeid, DCLONG flags)
 

(2) 機能

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

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

(4) 値が返される引数

(5) リターン値

リターン値 数値
(10進数)
意味
DC_OK 0 正常終了しました。
DCCLTER_INVALID_ARGS -2501 引数に指定した値が誤っています。
DCCLTER_FATAL -2503 初期化に失敗しました。または,クライアント環境定義の指定に誤りがあります。
DCCLTER_NO_BUFS -2504 必要なバッファが確保できませんでした。
DCCLTER_NET_DOWN -2506 ネットワーク障害が発生しました。
DCCLTER_TIMED_OUT -2507 メッセージの受信時にタイムアウトになりました。
DCCLTER_SYSERR -2518 システムエラーが発生しました。
DCCLTER_VERSION -2535 バージョン不一致が発生しました。
DCCLTER_INF_TOO_BIG -2546 受信したメッセージが,CUPで用意した領域に収まりません。収まり切らないメッセージは切り捨てました。引数hostnameおよびnodeidには値を設定済みです。
DCCLTER_PORT_IN_USE -2547 指定したポート番号は使用されています。
DCCLTER_INVALID_MESSAGE -2548 不正なメッセージを受信しました。
DCCLTER_ACCEPT_CANCELED -2549 一方通知受信待ち状態がdc_clt_cancel_notification_s関数によって解除されました。引数inf,inf_len,およびhostnameには値を設定済みです。

(6) 注意事項