| Linkexpress 利用者プログラム開発ガイド |
目次
索引
![]()
|
| 付録A サンプル | > A.1 転送APIのサンプル |
このサンプルプログラムは、以下のファイルに格納されています。
PCサーバ : インストールディレクトリ\sample\api\sndfile5.c
このサンプルプログラムは、完了復帰型のSNDFILEを使用してファイル転送を行うものです。プログラムの説明を以下に示します。

Linkexpressに対してSNDFILEの要求を行います。ネットワーク定義簡易化機能を使用する場合、相手システム名に"ADDR=10.10.10.2"を指定します。完了復帰型のSNDFILEは、ファイル転送の完了通知を受け取るため、GETINFおよびTRANCOMPの要求は行いません。
Sndfile5.cの内容を以下に示します。
/*
*
* AllRights Reserved Copyright (c) FUJITSU LIMITED 2004
*
*/
/*
* API sample program (init No.7)
*/
/*
* include file
*/
#include <sys/types.h>
#include <string.h>
#include <stdio.h>
#include <lxapi.h>
int
main()
{
dts_sndfile_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_sndfile_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 = (unsigned char *)"@_USRAPL";
/* set ADDR=IP adress */
input_dcb.system_name = (unsigned char *)"ADDR=10.10.10.2";
input_dcb.assoc_cont = DTS_API_CUT;
input_dcb.local_filename = (unsigned char *)"C:\\test\\api\\a";
input_dcb.local_user = 0;
input_dcb.remote_filename = (unsigned char *)"C:\\test\\api\\b";
input_dcb.storage_form = DTS_API_REP;
input_dcb.access_password = 0;
input_dcb.data_type = DTS_API_BINARY;
input_dcb.file_attr = 0;
input_dcb.speed = 0;
input_dcb.ret_tid = 0;
input_dcb.protocol_option = 0;
input_dcb.user_id = (unsigned char *)"linkexp";
input_dcb.password = &password;
password.password_len = 7;
strcpy( (char *)password.password, "linkexp" );
input_dcb.group = 0;
/*
* sndfile
*/
ret = sndfile( &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 );
} |
/*
*
* AllRights Reserved Copyright (c) FUJITSU LIMITED 2005
*
*/
/*
* API sample program (init No.7)
*/
/*
* include file
*/
#include <sys/types.h>
#include <string.h>
#include <stdio.h>
#include <lxapi.h>
int
main()
{
dts_sndfile_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_sndfile_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 = (unsigned char *)"@_USRAPL";
/* set ADDR=IP adress */
input_dcb.system_name = (unsigned char *)"ADDR=10.10.10.2";
input_dcb.assoc_cont = DTS_API_CUT;
input_dcb.local_filename = (unsigned char *)"C:\\test\\api\\a";
input_dcb.local_user = 0;
input_dcb.remote_filename = (unsigned char *)"C:\\test\\api\\b";
input_dcb.storage_form = DTS_API_REP;
input_dcb.access_password = 0;
input_dcb.data_type = DTS_API_BINARY;
input_dcb.file_attr = 0;
input_dcb.speed = 0;
input_dcb.ret_tid = 0;
input_dcb.protocol_option = 0;
input_dcb.user_id = (unsigned char *)"linkexp";
input_dcb.password = &password;
password.password_len = 7;
strcpy( (char *)password.password, "linkexp" );
input_dcb.group = 0;
/*
* sndfile
*/
ret = sndfile( &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 );
} |
目次
索引
![]()
|