Linkexpress 利用者プログラム開発ガイド |
目次
索引
![]() ![]() |
付録A サンプル | > A.1 転送APIのサンプル |
このサンプルプログラムは、以下のファイルに格納されています。
PCサーバ : インストールディレクトリ\sample\api\sndmsg.c
UNIXサーバ : インストールディレクトリ/SAMPLE/api/sndmsg.c
このサンプルプログラムは、完了復帰型のSNDMSGを使用してメッセージ転送を行うものです。プログラムの説明を以下に示します。
Linkexpressに対してSNDMSGの要求を行います。完了復帰型で要求しているため、メッセージ転送の完了通知を受け取った後に終了します。
SNDMSGで完了通知を受け取るため、GETINFで完了通知を受け取る必要はありません。
sndmsg.cの内容を以下に示します。
/* * * All Rights Reserved Copyright (c) FUJITSU LIMITED 1997-2005 * */ /* * API sample program (init No.4) */ /* * include file */ #include <sys/types.h> #include <string.h> #include <stdio.h> #include <lxapi.h> int main() { dts_sndmsg_dcb_t input_dcb; dts_inf_transfer_comp_t output_dcb; password_t password; int ret = 0; /* * clear parameters */ memset( &input_dcb, 0, sizeof(dts_sndmsg_dcb_t) ); memset( &output_dcb, 0, sizeof(dts_inf_transfer_comp_t) ); memset( &password, 0, sizeof(password_t) ); /* * set parameters */ input_dcb.req_ident = 0; input_dcb.req_type = DTS_API_COMP; input_dcb.appl_name = "@_USRAPL"; input_dcb.system_name = "dest_system"; input_dcb.assoc_cont = DTS_API_CUT; input_dcb.local_user = 0; input_dcb.message_len =100; input_dcb.message_text = "1234567890123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890"; input_dcb.ret_tid = 0; input_dcb.data_type = DTS_API_BINARY; input_dcb.protocol_msgoption = 0; input_dcb.user_id = "linkexp"; input_dcb.password = &password; password.password_len = 7; strcpy( password.password, "linkexp" ); input_dcb.group = 0; /* * sndmsg */ ret = sndmsg ( &input_dcb, &output_dcb ); printf("ret =%d, diag %d,%d,%d\n", ret, output_dcb.diagnostic.category_code, output_dcb.diagnostic.error_code, output_dcb.diagnostic.detail_code ); printf("req_ident =%d\n", output_dcb.req_ident ); printf("system_name =%s\n", output_dcb.system_name ); printf("flow_kind =%d\n", output_dcb.flow_kind ); printf("start_time =%s", ctime( (time_t *)&output_dcb.start_time ) ); printf("comp_time =%s", ctime( (time_t *)&output_dcb.comp_time ) ); printf("trn_comptype =%d\n", output_dcb.trn_comptype ); printf("data_size =%d\n", output_dcb.data_size ); return( 0 ); }
参照
lxapi.h、dts_inf_transfer_comp_t、dts_sndmsg_dcb_t、sndmsg
用語解説
目次
索引
![]() ![]() |