📄 procs_bms.c
字号:
#include <stdio.h>#include <stdlib.h>#include <string.h>#include <time.h>#include <memory.h>#include "apgloble.h"int b9999( TRADE_HEAD *tr_h, BIG_STRC *bs){ FILE *fp ; char filename[ 80], str[ 256] ; char *p ; dp.sn = 0 ; /* 存放文件的记录数 */ sprintf( filename, "%s/dat/config.dat", getenv("HOME")) ; if ( (fp=fopen( filename, "rb+")) == NULL ) { bs->result = FILE_OPEN_ERROR ; return( FAILURE) ; } while ( !feof( fp) ) { memset( str, '\0', sizeof( str)) ; if ( fgets( str, 256, fp) == NULL ) break ; p = (char *)str ; dp.sb[ dp.sn].buf_len = 0 ; while ( *p != '\n' && *p != '\r') { if ( *p == '|' ) *p = '~' ; dp.sb[ dp.sn].buf[ dp.sb[ dp.sn].buf_len] = *p ; dp.sb[ dp.sn].buf_len ++ ; p ++ ; } dp.sb[ dp.sn].buf[ dp.sb[ dp.sn].buf_len] = *p ; dp.sb[ dp.sn].buf_len ++ ; dp.sn ++ ; } fclose( fp) ; if ( dp.sn == 0 ) { bs->result =1006 ; return( FAILURE) ; } return( SUCCESS) ;}/* * Routine : FILE TRANSFERING * Rewrite by : Tristan TANG * Rewrite on : August 2, 2004 * Objective : buffer size more than 256 */int b9613( TRADE_HEAD *tr_h, BIG_STRC *bs){ FILE *fp ; char filename[128], line[2048]; char optcode[4 + 1]; char *p ; int left = 0, line_len = 0; char line_left[2048]; dp.sn = 0 ; memset(filename, 0,sizeof(filename)); bms_trace("address[%s]",bs->address); switch ( bs->bill_flg ) { case 1: sprintf( filename, "%s/tmp/%s.ivr",getenv("HOME"),bs->address); break; case 2: sprintf( filename, "%s/tmp/%s.fax",getenv("HOME"),bs->address); break; case 3: sprintf( filename, "%s/tmp/%s", getenv("HOME"),bs->address) ; break; default: return( FAILURE) ; break; } if ( (fp=fopen( filename, "rb+")) == NULL ) { bs->result = FILE_OPEN_ERROR ; return( FAILURE) ; } while ( !feof( fp) ) { memset( line, 0, sizeof(line)) ; if ( fgets(line, 2048, fp) == NULL ) break ; p = (char *)line; dp.sb[dp.sn].buf_len = 0; while( *p != '\n' && *p != '\r') { dp.sb[dp.sn].buf[dp.sb[dp.sn].buf_len] = *p; dp.sb[dp.sn].buf_len++; p++; } dp.sb[dp.sn].buf[dp.sb[dp.sn].buf_len] = *p; dp.sb[dp.sn].buf_len++; dp.sn++;/*************** line_len = strlen(line); left = line_len; memset(line_left, 0, sizeof(line_left)); memcpy(line_left, line, left); dp.sb[ dp.sn].buf_len = 0 ; while( left > SND_LEN ) { memcpy(dp.sb[dp.sn].buf, line_left, SND_LEN); dp.sb[ dp.sn++].buf_len += SND_LEN; memset(line_left, 0, sizeof(line_left)); left = line_len - dp.sn*SND_LEN; memcpy(line_left, line + dp.sn*SND_LEN, left); } memcpy(dp.sb[dp.sn].buf, line_left, left); dp.sb[ dp.sn++].buf_len += left;*/ } fclose( fp) ; if ( dp.sn == 0 ) { bs->result =1006 ; return( FAILURE) ; } switch ( bs->bill_flg ) { case 1: case 2: sprintf( filename, "%s/tmp/%s.ivr",getenv("HOME"),bs->address); //unlink( filename) ; sprintf( filename, "%s/tmp/%s.fax",getenv("HOME"),bs->address); //unlink( filename) ; break; default: break; } return( SUCCESS) ;}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -